Initial commit: expo-popcore project
This commit is contained in:
34
lib/api/loomart-client.ts
Normal file
34
lib/api/loomart-client.ts
Normal file
@@ -0,0 +1,34 @@
|
||||
import { createClient, createConfig } from '@repo/loomart-sdk';
|
||||
import { storage } from '../storage';
|
||||
import { authEvents } from './client';
|
||||
|
||||
export const getAuthToken = async () =>
|
||||
(await storage.getItem('bestaibest.better-auth.session_token')) || '';
|
||||
|
||||
export const loomartClient = createClient(
|
||||
createConfig({
|
||||
baseUrl: 'https://api.mixvideo.bowong.cc'
|
||||
})
|
||||
);
|
||||
|
||||
loomartClient.interceptors.request.use(async (request) => {
|
||||
const Authorization = `Bearer ${await getAuthToken()}`
|
||||
request.headers.append(`Authorization`, Authorization)
|
||||
|
||||
if (__DEV__) {
|
||||
console.log('[API]', request.method, request.url);
|
||||
}
|
||||
|
||||
return request;
|
||||
})
|
||||
|
||||
loomartClient.interceptors.response.use(async (response) => {
|
||||
if (__DEV__) {
|
||||
console.log('[API]', response.status, response.url);
|
||||
}
|
||||
|
||||
if (response.status === 401) {
|
||||
authEvents.emitUnauthorized();
|
||||
}
|
||||
return response;
|
||||
});
|
||||
Reference in New Issue
Block a user