| | |
| | | import { NO_AUTH_API_LIST } from '/@/api/ai/chat'; |
| | | import { LOGIN_URL, TEL_LOGIN_URL } from '/@/api/ai/user'; |
| | | import { Local } from '/@/utils/storage'; |
| | | import { isSharePage } from '/@/stores/chatRoom'; |
| | | |
| | | const amisRootRef = ref<HTMLDivElement>(null); |
| | | |
| | | const props = defineProps({ |
| | |
| | | type: Object, |
| | | default: () => ({}), |
| | | }, |
| | | context:{ |
| | | context: { |
| | | type: Object, |
| | | default: () => ({}), |
| | | }, |
| | |
| | | }); |
| | | |
| | | const emit = defineEmits(['ready']); |
| | | |
| | | function insertScript(src, callback) { |
| | | const script = document.createElement('script'); |
| | | script.setAttribute('type', 'text/javascript'); |
| | | script.setAttribute('src', src); |
| | | script.async = true; |
| | | script.onload = () => callback(); |
| | | script.onerror = () => callback(new Error(`Failed to load ${src}`)); |
| | | document.head.appendChild(script); |
| | | } |
| | | function loadScript(callback) { |
| | | if (!window.eventList.amisSdkJsPromise) { |
| | | window.eventList.amisSdkJsPromise = new Promise((resolve, reject) => { |
| | | insertScript('/static/amis/sdk/sdk.js', (error) => { |
| | | if (error) { |
| | | reject(error); |
| | | return; |
| | | } |
| | | resolve(); |
| | | }); |
| | | }); |
| | | } |
| | | window.eventList.amisSdkJsPromise |
| | | .then(() => { |
| | | callback(); |
| | |
| | | }); |
| | | }); |
| | | } |
| | | |
| | | |
| | | const current = router.currentRoute.value; |
| | | |
| | |
| | | // api.context 中包含发送请求前的上下文信息 |
| | | // 获取本地的 token |
| | | const accessSession = Local.get(accessSessionKey); |
| | | if (!NO_AUTH_API_LIST.includes(api.url)) { |
| | | if (!NO_AUTH_API_LIST.includes(api.url) && !isSharePage.value) { |
| | | if (accessSession) { |
| | | // 将 token 添加到请求报文头中 |
| | | api.headers['hswatersession'] = accessSession; |