fix(share): 修复分享链接路径不一致并移除对话消息截断
This commit is contained in:
parent
7b4fb72cdc
commit
eff089c7ad
|
|
@ -94,7 +94,7 @@ async def create_share_handler(data: dict):
|
||||||
|
|
||||||
return {
|
return {
|
||||||
"id": share["id"],
|
"id": share["id"],
|
||||||
"shareUrl": f"/#/share/{share['id']}",
|
"shareUrl": f"/chat-ui/share/{share['id']}",
|
||||||
"expiresAt": share["expiresAt"],
|
"expiresAt": share["expiresAt"],
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -114,7 +114,7 @@ async def create_share_handler(data: dict):
|
||||||
conv_snapshot = {
|
conv_snapshot = {
|
||||||
"id": conv["id"],
|
"id": conv["id"],
|
||||||
"title": conv["title"],
|
"title": conv["title"],
|
||||||
"messages": conv.get("messages", [])[:100], # 限制消息数量
|
"messages": conv.get("messages", []),
|
||||||
"createdAt": conv["createdAt"],
|
"createdAt": conv["createdAt"],
|
||||||
"updatedAt": conv["updatedAt"],
|
"updatedAt": conv["updatedAt"],
|
||||||
}
|
}
|
||||||
|
|
@ -139,7 +139,7 @@ async def create_share_handler(data: dict):
|
||||||
# 返回分享信息
|
# 返回分享信息
|
||||||
return {
|
return {
|
||||||
"id": share["id"],
|
"id": share["id"],
|
||||||
"shareUrl": f"/#/share/{share['id']}",
|
"shareUrl": f"/chat-ui/share/{share['id']}",
|
||||||
"expiresAt": share["expiresAt"],
|
"expiresAt": share["expiresAt"],
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -227,4 +227,4 @@ async def verify_share_handler(share_id: str, data: dict):
|
||||||
"viewCount": view_count,
|
"viewCount": view_count,
|
||||||
"hasPassword": bool(share["passwordHash"]),
|
"hasPassword": bool(share["passwordHash"]),
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -24,7 +24,7 @@ describe('分享 API 测试', () => {
|
||||||
it('应该成功创建分享', async () => {
|
it('应该成功创建分享', async () => {
|
||||||
const mockResponse: ShareCreateResponse = {
|
const mockResponse: ShareCreateResponse = {
|
||||||
id: 'share-123',
|
id: 'share-123',
|
||||||
shareUrl: 'https://example.com/#/share/share-123',
|
shareUrl: 'https://example.com/chat-ui/share/share-123',
|
||||||
expiresAt: Date.now() + 7 * 24 * 60 * 60 * 1000,
|
expiresAt: Date.now() + 7 * 24 * 60 * 60 * 1000,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -147,4 +147,4 @@ describe('分享 API 测试', () => {
|
||||||
expect(result.share).toBeUndefined()
|
expect(result.share).toBeUndefined()
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
|
||||||
|
|
@ -191,8 +191,8 @@ async function handleCreateShare() {
|
||||||
// 关闭当前模态框,打开结果模态框
|
// 关闭当前模态框,打开结果模态框
|
||||||
handleClose()
|
handleClose()
|
||||||
|
|
||||||
// 前端生成分享 URL
|
// 优先使用后端返回的路径,避免前后端各自拼接导致不一致
|
||||||
const shareUrl = `${window.location.origin}/chat-ui/share/${result.id}`
|
const shareUrl = new URL(result.shareUrl, window.location.origin).toString()
|
||||||
|
|
||||||
// 存储分享信息并打开结果模态框
|
// 存储分享信息并打开结果模态框
|
||||||
settingsStore.setShareResult({
|
settingsStore.setShareResult({
|
||||||
|
|
@ -576,4 +576,4 @@ watch(show, (newVal: boolean) => {
|
||||||
transform: scale(0.95);
|
transform: scale(0.95);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue