diff --git a/src/api/api.ts b/src/api/api.ts index 43783e7..963151a 100644 --- a/src/api/api.ts +++ b/src/api/api.ts @@ -34,6 +34,7 @@ const api = { auth: createMethod(AuthTokens.createRequest), appleAuth: createMethod(AppleAuth.createRequest), googleAuth: createMethod(GoogleAuth.createRequest), + getRealToken: createMethod(AuthTokens.createGetRealTokenRequest), getAppConfig: createMethod(Apps.createRequest), getElement: createMethod(Element.createRequest), getElements: createMethod(Elements.createRequest), diff --git a/src/api/resources/AuthTokens.ts b/src/api/resources/AuthTokens.ts index 748631d..18c72f6 100644 --- a/src/api/resources/AuthTokens.ts +++ b/src/api/resources/AuthTokens.ts @@ -1,7 +1,7 @@ import routes from "@/routes"; import { AuthToken } from "../types"; import { User } from "./User"; -import { getBaseHeaders } from "../utils"; +import { getAuthHeaders, getBaseHeaders } from "../utils"; export interface PayloadRegisterByEmail { email: string; @@ -41,3 +41,16 @@ export const createRequest = (payload: Payload): Request => { const body = JSON.stringify({ auth: { ...payload } }); return new Request(url, { method: "POST", headers: getBaseHeaders(), body }); }; + +export interface PayloadGetRealToken { + token: string; +} + +export interface ResponseGetRealToken { + token: string; +} + +export const createGetRealTokenRequest = ({ token }: PayloadGetRealToken): Request => { + const url = new URL(routes.server.dApiGetRealToken()); + return new Request(url, { method: "POST", headers: getAuthHeaders(token) }); +} \ No newline at end of file diff --git a/src/components/App/index.tsx b/src/components/App/index.tsx index dd06500..2d70791 100755 --- a/src/components/App/index.tsx +++ b/src/components/App/index.tsx @@ -198,11 +198,14 @@ function App(): JSX.Element { (async () => { if (!jwtToken) return; logout(); - const auth = await api.auth({ jwt: jwtToken }); - const { - auth: { token, user }, - } = auth; - signUp(token, user); + try { + const { token } = await api.getRealToken({ token: jwtToken }); + const { user } = await api.getUser({ token }); + signUp(token, user); + } catch (error) { + console.log("Error of get real token or get user: "); + console.error(error); + } })(); }, [api, jwtToken, logout, signUp]); diff --git a/src/routes.ts b/src/routes.ts index 09851fb..8a24f3e 100755 --- a/src/routes.ts +++ b/src/routes.ts @@ -217,6 +217,8 @@ const routes = { ), dApiAuth: () => [dApiHost, "users", "auth"].join("/"), + dApiGetRealToken: () => [dApiHost, "users", "auth", "token"].join("/"), + assistants: () => [apiHost, prefix, "ai", "assistants.json"].join("/"), setExternalChatIdAssistants: (chatId: string) => [apiHost, prefix, "ai", "assistants", chatId, "chats.json"].join("/"),