function Vegvesen(token, backendUrl, debug) { this.method = 'GET' this.backendUrl = backendUrl || 'http://localhost:5000/fullstakk-market-1541755121239/europe-west1/fmsVegvesen-vehicle' this.token = token this.debug = debug } Vegvesen.prototype.send = function (data) { if (this.method === 'GET') { var dataKey = Object.keys(data) var dataVal = Object.values(data) var queryUrl = this.backendUrl + '/' + dataKey.map(function (key, i) { return key + '/' + encodeURIComponent(dataVal[i].trim()) }).join('&') /*var queryUrl = this.backendUrl + '?' + dataKey.map(function (key, i) { return key + '=' + encodeURIComponent(dataVal[i].trim()) }).join('&')*/ var fetchOption = { method: this.method/*, headers: { 'Access-Control-Allow-Origin': '*' }*/ } } else { var queryUrl = this.backendUrl var fetchOption = { method: this.method, headers: { 'Accept': 'application/json', 'Content-Type': 'application/json'/*, 'Access-Control-Allow-Origin': '*'*/ }, body: JSON.stringify(data) } } if (this.token) { if (!fetchOption.headers) { fetchOption.headers = {} } fetchOption.headers['Authorization'] = 'Bearer ' + this.token //fetchOption.headers['SVV-Authorization'] = this.token } if (this.debug) { console.log('Fetch', 'data', data) console.log('Fetch', 'queryUrl', queryUrl) console.log('Fetch', 'fetchOption', fetchOption) return Promise.resolve(data) } return fetch(queryUrl, fetchOption) .then(function (response) { return response.json() }) .then(function (data) { return data.error ? this.error(data.error) : this.success(data) }) .catch(function (error) { console.error('Error:', error) }) }