dify修正
This commit is contained in:
@@ -127,7 +127,35 @@ export const chatApi = {
|
||||
|
||||
// 监听错误事件
|
||||
eventSource.addEventListener('error', (event: any) => {
|
||||
const error = new Error(event.data || '对话失败');
|
||||
// 如果 data 为空,说明是正常的流结束信号(有些工作流不发送end事件)
|
||||
if (!event.data || event.data.trim() === '') {
|
||||
console.log('[SSE流结束] 收到空error事件,当作正常结束处理');
|
||||
|
||||
// 触发结束回调(如果有的话)
|
||||
callback?.onMessageEnd?.({
|
||||
conversationId: request.conversationId,
|
||||
messageId: '',
|
||||
answer: fullMessage
|
||||
} as any);
|
||||
|
||||
eventSource.close();
|
||||
|
||||
// 正常结束
|
||||
resolve({
|
||||
code: 200,
|
||||
success: true,
|
||||
login: true,
|
||||
auth: true,
|
||||
data: {
|
||||
conversationId: request.conversationId,
|
||||
answer: fullMessage
|
||||
} as any,
|
||||
message: '对话已结束'
|
||||
});
|
||||
return;
|
||||
}
|
||||
|
||||
const error = new Error(event.data);
|
||||
callback?.onError?.(error);
|
||||
eventSource.close();
|
||||
reject(error);
|
||||
@@ -358,7 +386,34 @@ export const chatApi = {
|
||||
|
||||
// 监听错误事件
|
||||
eventSource.addEventListener('error', (event: any) => {
|
||||
const error = new Error(event.data || '重新生成失败');
|
||||
// 如果 data 为空,说明是正常的流结束信号(有些工作流不发送end事件)
|
||||
if (!event.data || event.data.trim() === '') {
|
||||
console.log('[SSE流结束-重新生成] 收到空error事件,当作正常结束处理');
|
||||
|
||||
// 触发结束回调(如果有的话)
|
||||
callback?.onMessageEnd?.({
|
||||
messageId: messageId,
|
||||
answer: fullMessage
|
||||
} as any);
|
||||
|
||||
eventSource.close();
|
||||
|
||||
// 正常结束
|
||||
resolve({
|
||||
code: 200,
|
||||
success: true,
|
||||
login: true,
|
||||
auth: true,
|
||||
data: {
|
||||
messageId: messageId,
|
||||
answer: fullMessage
|
||||
} as any,
|
||||
message: '重新生成已结束'
|
||||
});
|
||||
return;
|
||||
}
|
||||
|
||||
const error = new Error(event.data);
|
||||
callback?.onError?.(error);
|
||||
eventSource.close();
|
||||
reject(error);
|
||||
|
||||
Reference in New Issue
Block a user