client/src/api/APIClient.js
changeset 97 69eaef18b01b
parent 87 dbcee57de2c6
child 129 d48946d164c6
--- a/client/src/api/APIClient.js	Tue Jun 27 10:54:04 2017 +0200
+++ b/client/src/api/APIClient.js	Tue Jun 27 11:38:26 2017 +0200
@@ -10,7 +10,12 @@
   createRequest = (method, uri, data, headers) => {
 
     headers = headers || new Headers();
-    headers.append("Content-Type", "application/json");
+    if(method !== 'HEAD') {
+      headers.append("Content-Type", "application/json");
+    } else {
+      headers.append("Content-Type", "text/plain");
+    }
+
 
     var options = {
       method: method,
@@ -46,7 +51,6 @@
   }
 
   request = (method, uri, data) => {
-    console.log(method + ' ' + uri);
     var req = this.hasToken() ? this.createAuthorizedRequest(method, uri, data) : this.createRequest(method, uri, data);
     return this.fetch(req, { credentials: 'include' });
   }
@@ -72,12 +76,18 @@
             if(response.status === 204) {
               resJsonPromise = Promise.resolve({});
             } else {
-              resJsonPromise = response.json();
+              resJsonPromise = response.text().then(data => {
+                if(data.length > 0) {
+                  return JSON.parse(data);
+                } else {
+                  return {};
+                }
+              });
             }
-            return resJsonPromise.then((data) => resolve(data));
+            return resJsonPromise.then(data => resolve(data));
 
           } else {
-            return response.json().then((data) => reject(data));
+            return response.json().then(data => reject(data));
           }
         })
         .catch((error) => {