diff --git a/src/utils/functions/deleteApi.ts b/src/utils/functions/deleteApi.ts new file mode 100644 index 0000000..12b7786 --- /dev/null +++ b/src/utils/functions/deleteApi.ts @@ -0,0 +1,31 @@ +import { ofetch } from 'ofetch' +import dayjs from 'dayjs' +import encryptRsa from './encryptRsa' + +const API = import.meta.env.VITE_BACKEND + +export default async (api: string, body: Object) => { + const today = new Date() + const todayUnix = dayjs(today).unix() + const expiration = todayUnix + 9 + const aes = await encryptRsa(`${api.toString()}-${todayUnix.toString()}-${expiration.toString()}`) + + const hash = `ocbo=${aes}token` + try { + await ofetch(API + api, { + headers: { + Accept: 'application/json', + 'Cache-Control': 'no-cache', + 'OCBO-Token': hash, + }, + retry: 3, + retryDelay: 500, + retryStatusCodes: [400, 404, 405, 500, 502], + method: 'DELETE', + body: body, + }) + return true + } catch { + return false + } +}