|
|
@@ -4062,17 +4062,17 @@ const getAuthToken = async (): Promise<string> => {
|
|
|
}
|
|
|
|
|
|
let authUrl = ''
|
|
|
- if (isDev) {
|
|
|
- // 开发环境使用 vite 代理
|
|
|
- authUrl = '/yjs-auth/auth/token'
|
|
|
- }
|
|
|
- else {
|
|
|
- // 生产环境:如果服务器有代理则使用代理,否则直接访问(需要服务器配置 CORS)
|
|
|
- // 或者通过后端 API 获取 token
|
|
|
- let baseUrl = 'https://yjsredis.cocorobo.cn/'
|
|
|
- baseUrl = baseUrl.replace(/\/+$/, '')
|
|
|
- authUrl = `${baseUrl}/auth/token`
|
|
|
- }
|
|
|
+ // if (isDev) {
|
|
|
+ // // 开发环境使用 vite 代理
|
|
|
+ // authUrl = '/yjs-auth/auth/token'
|
|
|
+ // }
|
|
|
+ // else {
|
|
|
+ // 生产环境:如果服务器有代理则使用代理,否则直接访问(需要服务器配置 CORS)
|
|
|
+ // 或者通过后端 API 获取 token
|
|
|
+ let baseUrl = 'https://yjsredis.cocorobo.cn/'
|
|
|
+ baseUrl = baseUrl.replace(/\/+$/, '')
|
|
|
+ authUrl = `${baseUrl}/auth/token`
|
|
|
+ // }
|
|
|
|
|
|
console.log('🔐 获取认证 token,URL:', authUrl)
|
|
|
const response = await axios.get(authUrl)
|
|
|
@@ -4144,17 +4144,17 @@ const createWebSocketConnection = async (type = 1) => {
|
|
|
}
|
|
|
|
|
|
// 获取认证 token
|
|
|
- // try {
|
|
|
- // authToken.value = await getAuthToken()
|
|
|
- // console.log('🔐 认证 token 获取成功,准备连接 WebSocket')
|
|
|
- // }
|
|
|
- // catch (error) {
|
|
|
- // console.error('🔐 获取认证 token 失败,连接可能失败:', error)
|
|
|
- // connectionStatus.value = 'disconnected'
|
|
|
- // isConnecting.value = false
|
|
|
- // handleDisconnection()
|
|
|
- // return
|
|
|
- // }
|
|
|
+ try {
|
|
|
+ authToken.value = await getAuthToken()
|
|
|
+ console.log('🔐 认证 token 获取成功,准备连接 WebSocket')
|
|
|
+ }
|
|
|
+ catch (error) {
|
|
|
+ console.error('🔐 获取认证 token 失败,连接可能失败:', error)
|
|
|
+ connectionStatus.value = 'disconnected'
|
|
|
+ isConnecting.value = false
|
|
|
+ handleDisconnection()
|
|
|
+ return
|
|
|
+ }
|
|
|
|
|
|
docSocket.value = new Y.Doc()
|
|
|
docSocket.value.gc = true
|
|
|
@@ -4162,15 +4162,15 @@ const createWebSocketConnection = async (type = 1) => {
|
|
|
api.yweb_socket,
|
|
|
'PPT' + props.courseid,
|
|
|
docSocket.value,
|
|
|
- // { params: { yauth: authToken.value } }
|
|
|
+ { params: { yauth: authToken.value } }
|
|
|
)
|
|
|
|
|
|
// 启动定期更新 token
|
|
|
// 30分钟后再次更新
|
|
|
- // if (authTokenUpdateTimer.value) {
|
|
|
- // clearTimeout(authTokenUpdateTimer.value)
|
|
|
- // }
|
|
|
- // authTokenUpdateTimer.value = setTimeout(updateAuthToken, 30 * 60 * 1000) as unknown as NodeJS.Timeout
|
|
|
+ if (authTokenUpdateTimer.value) {
|
|
|
+ clearTimeout(authTokenUpdateTimer.value)
|
|
|
+ }
|
|
|
+ authTokenUpdateTimer.value = setTimeout(updateAuthToken, 30 * 60 * 1000) as unknown as NodeJS.Timeout
|
|
|
|
|
|
providerSocket.value.on('status', (event: any) => {
|
|
|
console.log('👉 WebSocket状态:', event.status)
|