javascript - Facebook Messenger 聊天机器人显示 "Check your connection and try again."

标签 javascript node.js facebook amazon-ec2 facebook-chatbot

最近,我正在尝试为自己构建一个机器人。当我使用 ngrok 在本地测试我的 bot 时,它完美地工作,但是当我部署到 AWS 时,我开始偶尔看到下面捕获的错误,并且导致没有 webhook 请求从 Facebook 发送到我的服务器。我不知道可能会出什么问题。我也检查了使用 tcpflow 发送到我的服务器的请求,但没有运气,似乎 Facebook 只是没有向我的服务器发送该特定请求。这是一个非常奇怪的问题,不会在我的机器人对话流程的特定点发生。我总是需要重复我的回答或我的回发才能让它发挥作用。

一些基本的服务器信息(不知道这是否重要):

  1. 可用区:ap-southeast-1b
  2. 类型:t2.micro
  3. CPU 使用率(当时):4%

如果有人能解开我的谜团,我将不胜感激。谢谢。

仅供引用,我已将此事报告给 Facebook:https://developers.facebook.com/bugs/1825253057751227

connection error example

最佳答案

您的 webhook 服务器必须通过有效的 https(非自签名)工作。

我的建议 - 将 https 添加到 webhook 服务器,使用 cloudflare service (免费),或使用 letsencrypt 获得免费的有效证书

关于javascript - Facebook Messenger 聊天机器人显示 "Check your connection and try again.",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40547487/

相关文章:

php - Facebook PHP SDK 5::API 2.4::跨站请求伪造验证失败。缺少必需的参数 "state"

javascript - 如何更改每个 html 表格行 Accordion

javascript - 在 Express 中获取无法 POST/错误

mysql - Node mysql 和 Promise

node.js - Sails js,我们如何使用 populate 编写内连接

Facebook 页面选项卡 iframe 应用程序无法正常工作

使用共享 SSL 的 Facebook 页面选项卡

javascript - 使用 jQuery 实现 PNG 交替过渡

javascript - 数据库为空时获取未定义

javascript - 公开一个全局可计算的