修复卡片交互回调响应超时问题 (错误码 200341)
根据飞书官方文档,卡片交互回调需要在 3 秒内响应。 修改: - 立即返回 toast 响应(3 秒内) - 异步处理后续操作(发送消息、上传文件等) - 使用规范的响应格式 修复前: - 等待所有处理完成后返回空对象 - 导致响应超时,弹出错误提示 修复后: - 立即返回 toast 提示 - 后台异步处理业务逻辑 - 用户通过消息接收处理结果
This commit is contained in:
13
src/index.js
13
src/index.js
@@ -77,8 +77,17 @@ async function handleFeishuEvent(req, res) {
|
||||
}
|
||||
|
||||
if (eventType === 'card.action.trigger') {
|
||||
await handleCardInteraction(decryptedEvent);
|
||||
res.status(200).json({});
|
||||
// 立即响应(3 秒内),后续处理异步进行
|
||||
res.status(200).json({
|
||||
toast: {
|
||||
type: 'success',
|
||||
content: '收到请求'
|
||||
}
|
||||
});
|
||||
// 异步处理,不阻塞响应
|
||||
handleCardInteraction(decryptedEvent).catch(err => {
|
||||
log('卡片交互处理错误:', err.message);
|
||||
});
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user