Files
oneuptime/lighthouse-runner/utils/api.js
2021-07-01 14:28:17 +01:00

107 lines
3.3 KiB
JavaScript
Executable File

const axios = require('axios');
const config = require('./config');
const _this = {
getHeaders: () => {
return {
'Access-Control-Allow-Origin': '*',
Accept: 'application/json',
'Content-Type': 'application/json;charset=UTF-8',
clusterKey: config.clusterKey,
};
},
postApi: (url, data) => {
const headers = _this.getHeaders();
return new Promise((resolve, reject) => {
axios({
method: 'POST',
url: `${config.serverUrl}/${url}`,
headers,
data,
})
.then(function(response) {
resolve(response.data);
})
.catch(function(error) {
if (error && error.response && error.response.data)
error = error.response.data;
if (error && error.data) {
error = error.data;
}
reject(error);
});
});
},
getApi: url => {
const headers = _this.getHeaders();
return new Promise((resolve, reject) => {
axios({
method: 'GET',
url: `${config.serverUrl}/${url}`,
headers,
})
.then(function(response) {
resolve(response.data);
})
.catch(function(error) {
if (error && error.response && error.response.data)
error = error.response.data;
if (error && error.data) {
error = error.data;
}
reject(error);
});
});
},
putApi: (url, data) => {
const headers = _this.getHeaders();
return new Promise((resolve, reject) => {
axios({
method: 'PUT',
url: `${config.serverUrl}/${url}`,
headers,
data,
})
.then(function(response) {
resolve(response.data);
})
.catch(function(error) {
if (error && error.response && error.response.data)
error = error.response.data;
if (error && error.data) {
error = error.data;
}
reject(error);
});
});
},
deleteApi: (url, data) => {
const headers = _this.getHeaders();
return new Promise((resolve, reject) => {
axios({
method: 'DELETE',
url: `${config.serverUrl}/${url}`,
headers,
data,
})
.then(function(response) {
resolve(response.data);
})
.catch(function(error) {
if (error && error.response && error.response.data)
error = error.response.data;
if (error && error.data) {
error = error.data;
}
reject(error);
});
});
},
};
module.exports = _this;