diff -r 7586b4a11c32 -r b2514a9bcd49 client/src/APIClient.js --- a/client/src/APIClient.js Tue Jun 20 12:11:57 2017 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,79 +0,0 @@ -class APIClient { - constructor(baseURL, store) { - this.baseURL = baseURL; - this.store = store; - } - - createRequest = (method, uri, data, headers) => { - - headers = headers || new Headers(); - headers.append("Content-Type", "application/json"); - - var options = { - method: method, - headers: headers, - }; - - if (data) { - options.body = JSON.stringify(data); - } - - // TODO : use URL-module to build URL - return new Request(this.baseURL + uri, options); - } - - getToken = () => { - const state = this.store.getState(); - return state.get('token'); - } - - hasToken = () => { - //const token = localStorage.getItem('token'); - const token = this.getToken(); - - return token !== null; - } - - createAuthorizedRequest = (method, uri, data) => { - - var headers = new Headers(), - //token = localStorage.getItem('token') || ''; - token = this.getToken() || ''; - headers.append("Authorization", "JWT " + token); - - return this.createRequest(method, uri, data, headers); - } - - 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' }); - } - - get = (uri, data) => { - return this.request('GET', uri, data); - } - - post = (uri, data) => { - return this.request('POST', uri, data); - } - - put = (uri, data) => { - return this.request('PUT', uri, data); - } - - fetch = (req) => { - return new Promise((resolve, reject) => { - fetch(req) - .then((response) => { - if (response.ok) { - return response.json().then((data) => resolve(data)); - } else { - return response.json().then((data) => reject(data)); - } - }); - }); - } -} - -export default APIClient