oll*_*208 8 javascript api node.js express slack-api
我正在使用 Slack API 从 Slack 工作区获取链接。它的工作原理是在发布消息时触发多次。每次。这是我的代码:
exports.slack = (req , res) => {
var message = req.body;
if (message.challenge) {
res.send(message.challenge);
} else if (message.event.type == 'message_received') {
if (message.event.text.includes('<')) {
// Link
console.log('NEW LINK');
var link = message.event.text.slice(1, -1);
getArticleInfo(link, (error, body) => {
if (error)
console.error(error);
else {
newArticleToDB(body , link, req);
}
});
}
}
}
Run Code Online (Sandbox Code Playgroud)
每次发布新消息时,我都会多次收到“新链接”日志。任何想法在哪里寻找这个问题?
谢谢。
我补充说res.sendStatus(200),现在一切都按预期进行。这是代码:
exports.slack = (req , res) => {
var message = req.body;
res.sendStatus(200);
if (message.challenge) {
res.send(message.challenge);
} else if (message.event.type == 'message' && message.event.subtype != 'message_changed') {
if (message.event.text && message.event.text.includes('<')) {
// Link
console.log('NEW LINK');
var link = message.event.text.slice(1, -1);
getArticleInfo(link, (error, body) => {
if (error)
console.error(error);
else {
newArticleToDB(body , link, req);
}
});
}
}
Run Code Online (Sandbox Code Playgroud)
我遇到了问题,感谢@taylor-singletary 的建议。我不得不打印
console.log('Request Headers::: ', JSON.stringify(req.headers));
Run Code Online (Sandbox Code Playgroud)
寻找
"x-slack-retry-num":"1"
Run Code Online (Sandbox Code Playgroud)
要获取标头值,只需参考这个问题:How to extract request http headers from a request using NodeJS connect
| 归档时间: |
|
| 查看次数: |
5111 次 |
| 最近记录: |