Facebook Messenger API:快速回复负载有什么作用?

Facebook Messenger API: What's Does a Quick Reply Payload Do?

如果我像下面这样发送 Facebook 快速回复 JSON:

"quick_replies":[
    {"content_type":"text","payload":"RED","title":"Red"},
    {"content_type":"text","payload":"BLUE","title":"Blue"},
    {"content_type":"text","payload":"GREEN","title":"Special"},
]

然后用户选择 "Special" 回复,我回来了

{"recipient_id":5555,"text":"Special"}

我认为 payload 字段的全部意义在于提供一个值而不是将被发回的标题,但 Facebook 似乎只是发送所选回复的标题,这就引出了问题......有效载荷字段有什么意义?

是的 - 你是对的,你应该对有效载荷做出回应。 正如您在这里看到的: https://developers.facebook.com/docs/messenger-platform/send-api-reference/quick-replies#callback

响应应该是:

{
  "sender": {
    "id": "USER_ID"
  },
  "recipient": {
    "id": "PAGE_ID"
  },
  "timestamp": 1464990849275,
  "message": {
    "mid": "mid.1464990849238:b9a22a2bcb1de31773",
    "seq": 69,
    "text": "Red",
    "quick_reply": {
      "payload": "DEVELOPER_DEFINED_PAYLOAD_FOR_PICKING_RED"
    }
  }
}  

正如@Keith Coughtrey 提到的,您应该启用 messaging_postbacks 权限。