Facebook 我可以在messenger webhook中将localhost用作URL回调吗

Facebook 我可以在messenger webhook中将localhost用作URL回调吗,facebook,facebook-javascript-sdk,webhooks,Facebook,Facebook Javascript Sdk,Webhooks,晚上好,刚刚看到Facebook发布了他的messenger机器人工具包,我立即投入其中,了解更多关于它的信息,也许可以尝试做我自己的 我的问题是,我没有运行https网站,它需要一个https有效url。我试图使用我的本地web服务器,它有一个证书,但它不工作 我的问题是,是否可以使用本地主机url来实现这一点 先谢谢你 我的问题是,是否可以使用本地主机url来实现这一点 不,当然不是——因为这种“回调”实际上意味着Facebook向您的服务器发出请求——而这在localhost中几乎不可能实

晚上好,刚刚看到Facebook发布了他的messenger机器人工具包,我立即投入其中,了解更多关于它的信息,也许可以尝试做我自己的

我的问题是,我没有运行https网站,它需要一个https有效url。我试图使用我的本地web服务器,它有一个证书,但它不工作

我的问题是,是否可以使用本地主机url来实现这一点

先谢谢你

我的问题是,是否可以使用本地主机url来实现这一点

不,当然不是——因为这种“回调”实际上意味着Facebook向您的服务器发出请求——而这在
localhost
中几乎不可能实现



现在,通过LetsEncrypt,您可以轻松免费获得网站的有效SSL证书。即使在您的服务器上没有,仍然有StartSSL,它免费提供基本证书。您所需要的只是一台服务器,您可以将它们安装在服务器上,或者将它们上载到服务器上,或者主机为其提供的任何机制。(如果他们没有提供,那么可能是时候切换了。)

实际上,这在localhost中是可能的。使用。它允许您通过http或https向公共web打开localhost。但是,这只能用于测试。

如果您想在本地环境中测试Webhook,我会尝试ultrahook.com,您可以免费获得API密钥,该工具会创建一个从公共URL到计算机的隧道。这是他们的常见问题页面:

您可以在计算机上下载并运行UltraHook客户端。信息技术 连接到云中的UltraHook服务器,并从 我们服务器上的公共端点连接到您的计算机。任何HTTP帖子 发送到公共端点的请求将通过隧道发送 已传递到可从计算机访问的专用终结点

我用它来测试来自不同提供商(比如支付网关)的Webhook。在计算机中,您可以运行以下操作:

ultrahookhttp://localhost:8000/webhook/


然后将外部服务中的webhook URL配置为
.ultrahook.com

谢谢你的回答,我问这个问题是因为有一些选项允许你在一些facebook应用中使用localhost作为URL。但正如你所说,这是不可能的。谢谢您的时间。是的,您可以使用localhost测试f.e.Facebook登录–但这是因为所有的事情都发生在您的浏览器中,它只是重定向到Facebook并从那里返回到您的localhost。而且你的浏览器知道什么是localhost以及如何访问它,所以这里没有问题,但Facebook没有。(或者你可以说他们当然也知道——但如果Facebook的服务器向127.0.0.1发出请求,这不会有多大效果。)如果多个开发人员在同一个webhook/Chatbot上工作,ngrok将无法工作。我尝试使用ngrok,如下面链接中所述,我成功了。