diff --git a/apps/contacts/ajax/currentphoto.php b/apps/contacts/ajax/currentphoto.php
index c8cccf83a659d8ae4ec75103ada8ee5a5ddb2e25..96080e661ef2012840e5cadce0801afbda2c3f05 100644
--- a/apps/contacts/ajax/currentphoto.php
+++ b/apps/contacts/ajax/currentphoto.php
@@ -20,6 +20,8 @@
  *
  */
 
+// Firefox and Konqueror tries to download application/json for me.  --Arthur
+OCP\JSON::setContentTypeHeader('text/plain');
 OCP\JSON::checkLoggedIn();
 OCP\JSON::checkAppEnabled('contacts');
 require_once 'loghandler.php';
diff --git a/apps/contacts/ajax/savecrop.php b/apps/contacts/ajax/savecrop.php
index e1826b6a3c53a7d5d6b7eecd0fecf80a88ebdaf5..f9a32bc3ba43827c4a4b3e554bed3a2f65b57dad 100644
--- a/apps/contacts/ajax/savecrop.php
+++ b/apps/contacts/ajax/savecrop.php
@@ -24,6 +24,9 @@ OCP\JSON::checkLoggedIn();
 OCP\JSON::checkAppEnabled('contacts');
 OCP\JSON::callCheck();
 
+// Firefox and Konqueror tries to download application/json for me.  --Arthur
+OCP\JSON::setContentTypeHeader('text/plain');
+
 require_once 'loghandler.php';
 
 $image = null;
diff --git a/apps/contacts/ajax/uploadphoto.php b/apps/contacts/ajax/uploadphoto.php
index 63abeb1fee1797aa7216bbc37bac25981c0609c4..4cd38db8c72a8407e917ec455a4303806ad0119f 100644
--- a/apps/contacts/ajax/uploadphoto.php
+++ b/apps/contacts/ajax/uploadphoto.php
@@ -25,6 +25,8 @@ OCP\JSON::checkLoggedIn();
 OCP\JSON::checkAppEnabled('contacts');
 OCP\JSON::callCheck();
 
+// Firefox and Konqueror tries to download application/json for me.  --Arthur
+OCP\JSON::setContentTypeHeader('text/plain');
 require_once 'loghandler.php';
 $l10n = OC_Contacts_App::$l10n;
 // If it is a Drag'n'Drop transfer it's handled here.