RemoveBgExtensionChrome/background_api.js

72 lines
1.5 KiB
JavaScript

import CONFIG from "./config.js";
import UTILS from "./background_utils.js";
const API = {
_get: async function (url, payload, token = null) {
try {
const headers = {
"Content-Type": "application/json",
}
if (token) {
headers['Authorization'] = `Bearer ${token}`
}
if (payload) {
url += '?' + new URLSearchParams(payload).toString();
}
const response = await fetch(url, {
headers
});
if (!response.ok) {
return false;
} else {
return await response.json();
}
} catch (error) {
console.error("background_api: _get", error);
return false;
}
},
_post: async function (url, payload, token = null) {
try {
const headers = {
"Content-Type": "application/json",
}
if (token) {
headers['Authorization'] = `Bearer ${token}`
}
const response = await fetch(url, {
method: "POST",
body: JSON.stringify(payload),
headers
});
if (!response.ok) {
return false;
} else {
return await response.json();
}
} catch (error) {
console.error("background_api: _post", error);
return false;
}
},
// TODO examle
example: async function(buyer_id) {
const env = await UTILS.getStorage('env') ?? 'dev'
const url = CONFIG._ENV[env][url]
return await this._get(url, null, {
request
});
}
};
export default API;