42 lines
1.4 KiB
JavaScript
42 lines
1.4 KiB
JavaScript
const server = window.server || '';
|
|
export const postFetch = (url, params) => {
|
|
if (typeof localStorage.access_token === "string" && localStorage.access_token !== "") {
|
|
params.access_token = localStorage.access_token;
|
|
}
|
|
url = server + url + "?__random__=" + (new Date()).valueOf();
|
|
return fetch(url, getFetchParams("POST", params)).then(res => res.json());
|
|
};
|
|
|
|
export const getFd = (values) => {
|
|
let fd = {};
|
|
for (let p in values) {
|
|
values[p] = _.isNil(values[p]) ? "" : values[p];
|
|
let item = values[p];
|
|
if (window.E9Encrypt && __AESEcrypt__) item = __AESEcrypt__.aes_data_encrypt(item);
|
|
fd = { ...fd, [p]: item };
|
|
}
|
|
if (window.E9Encrypt && __AESEcrypt__) {
|
|
fd = { ...fd, rsaAes01: __AESEcrypt__.get_rsa_aes_01(), rsaAes02: __AESEcrypt__.get_rsa_aes_02() };
|
|
}
|
|
return fd;
|
|
};
|
|
|
|
const getFetchParams = (method, params, header = {}) => {
|
|
let obj = {
|
|
method, mode: "cors",
|
|
headers: {
|
|
"Content-Type": "application/json",
|
|
"X-Requested-With": "XMLHttpRequest",
|
|
...header
|
|
}
|
|
};
|
|
if (server === "") {
|
|
obj.credentials = "include";
|
|
}
|
|
if (!_.isEmpty(params) && Object.prototype.toString.call(params) === "[object Object]") {
|
|
obj.body = JSON.stringify(getFd(params));
|
|
} else {
|
|
obj.body = JSON.stringify(params);
|
|
}
|
|
return obj;
|
|
}; |