1

我创建了一个自定义斜杠命令,用于在用户在特定房间中写入时返回数据。仅当我在 API 端点上硬编码一个值时,这才有效。我真的很想从像“/notes 12345”这样发送的消息中返回“12345”

我无法弄清楚我需要如何配置我的节点 API 端点以获取从 hipchat 发送的消息正文中包含的值。我需要一些特定的东西来处理传入的数据吗?

 app.post("/notes", function(req, res) {

  var value = req.body.message;

如果我使用 Postman,这可以工作,但我希望它来自用户在房间中输入的值。

我使用RequestBin来获取从 Hipchat 发送的原始数据:

{
    "event": "room_message",
    "item": {
        "message": {
            "date": "2016-11-01T16:24:35.109356+00:00",
            "from": {
                "id": int,
                "links": {
                    "self": "string"
                },
                "mention_name": "DannyDainton",
                "name": "Danny Dainton",
                "version": "string"
            },
            "id": "string",
            "mentions": [],
            "message": "/notes 67898",  <<<---- I want this value
            "type": "message"
        },
        "room": {
            "id": int,
            "is_archived": bool,
            "links": {
                "members": "string",
                "participants": "string",
                "self": "string",
                "webhooks": "string"
            },
            "name": "string",
            "privacy": "string",
            "version": "string"
        }
    },
    "oauth_client_id": "string",
    "webhook_id": int
}

我如何在对我的 node express API 端点的 POST 请求上进行此工作?我需要使用 JSON.parse 或 stringify 或类似的东西吗?在这一点上我真的一无所知。

提前谢谢了。

4

1 回答 1

1

这就是最终所需要的。我知道这会很简单!

   app.post("/notes", function(req, res) {

      var value = req.body.item.message.message;
于 2016-11-01T21:57:01.607 回答