在 Express 中响应 Slack url 的数据

Responding with data to a Slack url in Express

我的 Node 后端有以下路由,带有 express 中间件。我的应用程序使用 Slack 反斜杠 api 到 post 到用户频道的 link。当用户单击时,它会在 heroku 上托管的 angular 应用程序上打开一个表单。

我要做的是在提交表单时更新 Slack 用户。

所以问题是,当下面的路由被触发时(显然 res 指向 /update),我如何向 slack url 发送 post 请求。我已经研究了很多并尝试重写 headers 并使用低级 http 方法,但我觉得有更好的解决方案。非常感谢您的帮助。

app.post("/update", function(req,res,next) {
    res url -> http://slackapi/12345/
    res.json({"text":"hello":}
})

res 不应该发送到 slack,这是对任何联系你的人的回应。您需要向 slack 发送不同的请求,然后 return 随心所欲地使用 res.

您可以使用 request 模块生成对 slack 的 http 请求。

var request = require('request');

app.post("/update", function(req,res,next) {
  request('http://slackapi/12345/', function (error, response, body) {
    if (!error && response.statusCode == 200) {
      console.log(body);
      res.json({"text":"some answer to the requester"}); 
    } else {
      res.json({"text":"notify requester sending to slack falied"});
    }
  });
});