0

我的应用上有一个“发送到 Messenger”按钮。它以前可以正常工作。但现在它不适用于 Mac 和 iOS 上的 Safari。它在 Chrome 上完美运行,但是从 Safari 中单击时,Facebook 没有在我的 Webhook 上发送事件。

下面的屏幕截图:在 Safari 上,用户单击身份验证“点击返回 URL”后,我还会获得一个特定页面。

用户单击发送到信使按钮的图像
要求用户进行身份验证
点击以返回 URL 屏幕截图 - 可能的罪魁祸首
按钮状态显示已批准,但实际上并非如此

4

1 回答 1

0

给您的错误消息说明了问题:

请求访问的帧具有“https”协议,被访问的帧具有“http”协议。协议必须匹配。

当您使用 Send To Messenger 插件时,您自己的域有一些要求。请参阅此处的文档。如果这些是您必须将您的域列入白名单。它指出:

使用完全限定的域名,例如https://www.messenger.com/。白名单不支持 IP 地址和 localhost。

您正在使用来自http://alpha.lvh.me:3000的 HTTP 为您的应用程序提供服务,但您必须使用 HTTPS 提供服务。从他们的要求中也不清楚您是否可以使用端口号,但我认为您最好使用ngroklocaltunnel进行本地开发。

[编辑] 我认为这可能是 Safari 上的内容安全策略 (CSP) 的问题。一些关于它的阅读here

于 2018-02-18T07:28:08.773 回答