1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- import { CONVERSATION_ID_INFO } from '../base/chat/constants'
- import { fetchAccessToken } from '@/service/share'
- export const checkOrSetAccessToken = async () => {
- const sharedToken = globalThis.location.pathname.split('/').slice(-1)[0]
- const accessToken = localStorage.getItem('token') || JSON.stringify({ [sharedToken]: '' })
- let accessTokenJson = { [sharedToken]: '' }
- try {
- accessTokenJson = JSON.parse(accessToken)
- }
- catch (e) {
- }
- if (!accessTokenJson[sharedToken]) {
- const res = await fetchAccessToken(sharedToken)
- accessTokenJson[sharedToken] = res.access_token
- localStorage.setItem('token', JSON.stringify(accessTokenJson))
- }
- }
- export const setAccessToken = async (sharedToken: string, token: string) => {
- const accessToken = localStorage.getItem('token') || JSON.stringify({ [sharedToken]: '' })
- let accessTokenJson = { [sharedToken]: '' }
- try {
- accessTokenJson = JSON.parse(accessToken)
- }
- catch (e) {
- }
- localStorage.removeItem(CONVERSATION_ID_INFO)
- accessTokenJson[sharedToken] = token
- localStorage.setItem('token', JSON.stringify(accessTokenJson))
- }
- export const removeAccessToken = () => {
- const sharedToken = globalThis.location.pathname.split('/').slice(-1)[0]
- const accessToken = localStorage.getItem('token') || JSON.stringify({ [sharedToken]: '' })
- let accessTokenJson = { [sharedToken]: '' }
- try {
- accessTokenJson = JSON.parse(accessToken)
- }
- catch (e) {
- }
- localStorage.removeItem(CONVERSATION_ID_INFO)
- delete accessTokenJson[sharedToken]
- localStorage.setItem('token', JSON.stringify(accessTokenJson))
- }
|