Facebook 移动网络应用程序开始抛出 API 错误代码 :196

标签 facebook mobile facebook-canvas

我有一个 Web 应用程序,它在 facebook 中配置为 Canvas Web 应用程序,并且还提供了一个移动 URL,其中移动特定页面由 Web 服务器提供。应用程序已经运行了大约 3 个月,从上周开始(我相信问题是上周开始的,过去 3 个月没有应用程序部署),当我从我的 Android 手机,从 native 中的应用程序快捷方式访问该应用程序时android facebook 应用程序,facebook 抛出以下错误

API错误代码:196 API 错误描述:无法重定向到移动设备上的桌面 Web Canvas URL。 错误消息:redirect_uri 不属于此应用程序。

我可以看到请求发送到我的网络服务器,在我将重定向网址发送到移动设备后,它会抛出上述错误。

由于没有代码更改,我对这个新错误有点困惑,谷歌搜索这个 api 错误号没有返回任何命中,除了一个日本网站,上周有人提到了这个错误,但不要没有看到任何解决方案。

错误消息“无法重定向到桌面网络 Canvas ...”似乎是不言自明的,但我无法弄清楚出了什么问题,特别是因为之前同样的情况也有效,除非 FB 更改了他们的任何内容在我的应用程序配置中引入新问题或暴露现有问题的代码。

最佳答案

为此浪费了 1 天时间,尝试阅读 2 个日语(未翻译)博客..然后我找到了方法!

在应用程序设置中,请勿为移动应用程序输入相同的网址!

示例:

normal canvas or website url: https://www.stackoverflow.com/

(这会自动将您带到 https://www.stackoverflow.com/index.php )

mobile url: https://www.stackoverflow.com/mobile/

(这会自动将您带到 https://www.stackoverflow.com/mobile/index.php )

然后在您的托管根文件夹中创建一个“移动”文件夹。

现在移动文件夹中的唯一区别是重定向 uri。

我正在使用 url 重定向,这是 facebook 所建议的。

https://developers.facebook.com/docs/reference/dialogs/oauth/

关键:确保您的重定向 uri 不是 Canvas 地址,而是网络服务器地址!

wrong redirect uri: https://apps.facebook.com/mobile/yourappname/

correct redirect uri: https://yourwebsite.com/mobile/

这会让 facebook 认为它是一个临时移动网站!一切都会按预期进行!

关于Facebook 移动网络应用程序开始抛出 API 错误代码 :196,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9658865/

相关文章:

html - 是否会下载隐藏在移动设备上的 iframe?

Facebook 应用水平滚动条

facebook - 你如何让 UiBinder 传递标签而不绑定(bind)它们以便 XFBML 工作?

javascript - 从 iframe 加载时 Conceal div

html - 无法定位 div 第一个按钮 CSS

Facebook 上 iFrame 中的 Paypal

javascript - Facebook Canvas : redirect_uri is not owned by the application

ios - Facebook 无法检索 iPhone 商店 ID?

css - 为什么我的移动页面上的图标在 mobile-chrome 中显示不正确?

cordova - PhoneGap 使用什么数据库以及大小限制是多少?