| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- import { CONVERSATION_ID_INFO } from '../base/chat/constants'
- import { fetchAccessToken } from '@/service/share'
- import { getProcessedSystemVariablesFromUrlParams } from '../base/chat/utils'
-
- 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 {
-
- }
- if (!accessTokenJson[sharedToken]) {
- const sysUserId = (await getProcessedSystemVariablesFromUrlParams()).user_id
- const res = await fetchAccessToken(sharedToken, sysUserId)
- 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 {
-
- }
-
- 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 {
-
- }
-
- localStorage.removeItem(CONVERSATION_ID_INFO)
-
- delete accessTokenJson[sharedToken]
- localStorage.setItem('token', JSON.stringify(accessTokenJson))
- }
|