2019-03-08 17:54:45 +01:00
|
|
|
const request = require('request-promise-native');
|
2018-06-13 15:31:33 +02:00
|
|
|
|
2019-05-06 17:27:24 +02:00
|
|
|
const createRequest = (defaults = {}) => {
|
2019-03-08 17:54:45 +01:00
|
|
|
const client = request.defaults({
|
|
|
|
baseUrl: 'http://localhost:1337',
|
|
|
|
json: true,
|
|
|
|
resolveWithFullResponse: true,
|
2019-07-01 14:39:57 +02:00
|
|
|
simple: false,
|
2019-03-08 17:54:45 +01:00
|
|
|
...defaults,
|
|
|
|
});
|
2018-06-13 15:31:33 +02:00
|
|
|
|
2019-03-08 17:54:45 +01:00
|
|
|
return async options => {
|
|
|
|
const params = JSON.parse(JSON.stringify(options));
|
2018-06-13 15:31:33 +02:00
|
|
|
|
2019-03-08 17:54:45 +01:00
|
|
|
for (let key in params.formData) {
|
|
|
|
if (typeof params.formData[key] === 'object') {
|
|
|
|
params.formData[key] = JSON.stringify(params.formData[key]);
|
2018-06-13 16:16:46 +02:00
|
|
|
}
|
2019-03-08 17:54:45 +01:00
|
|
|
}
|
2018-06-13 15:31:33 +02:00
|
|
|
|
2019-03-08 17:54:45 +01:00
|
|
|
return client(params);
|
|
|
|
};
|
2018-06-13 15:31:33 +02:00
|
|
|
};
|
2018-06-13 16:16:46 +02:00
|
|
|
|
2019-05-06 17:27:24 +02:00
|
|
|
const createAuthRequest = token => {
|
|
|
|
return createRequest({
|
|
|
|
headers: {
|
|
|
|
Authorization: `Bearer ${token}`,
|
|
|
|
},
|
|
|
|
});
|
|
|
|
};
|
|
|
|
|
|
|
|
module.exports = {
|
|
|
|
createRequest,
|
|
|
|
createAuthRequest,
|
|
|
|
};
|