我希望Slack触发Firebase Cloud Function。
示例:用户发送一条Slack消息,然后Firebase Cloud Functions将消息的一部分写入Firebase数据库。
工具:Slack API \事件订阅,googleapis,nodejs等
Slack文档here描述了质询响应要求。
收到活动后,以纯文本形式答复挑战 属性值。
但是,我不确定如何让Firebase知道Slack请求已获得授权。对Firebase Cloud Functions的HTTP请求必须包含 Firebase ID 。我已经让googleapis完成了设置Firebase ID的工作,但没有看到改变Slack的初始验证请求的方法(如果我有ID的话)
使用Slack API触发Firebase的最佳方法是什么?
答案 0 :(得分:2)
让Slack验证Firebase URL非常简单。
Google Firebase云功能
import * as functions from "firebase-functions";
export const helloSlack = functions.https.onRequest((request, response) => {
if (request) {
response.status(200).send(request.body);
} else {
console.log("Request Error...");
throw response.status(500);
}
});
松弛说明:
事件发生时,我们会将HTTP POST请求发送到[您的] URL。尽快 当您输入网址时,我们将发送带有质询参数的请求, 并且您的端点必须以挑战值作为响应。
云功能网址:
https://firebase-slack-adaptor.cloudfunctions.net/helloSlack
要应对验证挑战,请在Slack的“请求URL”字段中输入您的Firebase Cloud Functions URL(上面的示例)。
您的Firebase Cloud Function应该返回Slack请求的body
。 Slack在request.body
中找到了所需内容,并应验证您的URL。