/
vshmidt
/
object-browser
Обзор
Документация
Войти
/
vshmidt
/
object-browser
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
web-app/src/api/index.ts
41 строка
936 B
Daniel Valdivia
Rename `portal-ui` to `web-app` (#3178)
29 дек 2023, 20:44
Не верифицирован
29 дек 2023, 20:44
239b317
Код
Авторство
О чём код?
import { Api, HttpResponse, FullRequestParams, ApiError } from "./consoleApi"; export let api = new Api(); api.baseUrl = `${new URL(document.baseURI).pathname}api/v1`; const internalRequestFunc = api.request; api.request = async <T = any, E = any>({ body, secure, path, type, query, format, baseUrl, cancelToken, ...params }: FullRequestParams): Promise<HttpResponse<T, E>> => { const internalResp = internalRequestFunc({ body, secure, path, type, query, format, baseUrl, cancelToken, ...params, }); return internalResp.then((e) => CommonAPIValidation(e)); }; export function CommonAPIValidation<D, E>( res: HttpResponse<D, E>, ): HttpResponse<D, E> { const err = res.error as ApiError; if (err && res.status === 403 && err.message === "invalid session") { if (window.location.pathname !== "/login") { document.location = "/login"; } } return res; }