tl;博士;
问题 1:iOS 模拟器在尝试 facebook.authorize 时会挂起。 Safari 将使用 Facebook 移动 URL 打开,但页面不会呈现。
解决方案 1:权限 (publish_actions) 拼写错误。确保权限和受众拼写正确。
问题 2:iOS 模拟器 (7.0.3) 将完成 facebook.authorize 过程,但我的 iPhone 5 (7.0.4) 上的相同代码将始终返回“登录失败”。以下是该问题的截屏:http://youtu.be/yQiYMFH5y3U
解决方案 2:在“设置”> Facebook 中,有一个有权(或没有)通过 SDK 本地访问 Facebook 的应用程序列表。我的应用程序在列表中被标记为禁用。确保该应用程序在列表中已启用。
<小时/>在 iPhone 上使用 Trigger.IO 上的 Facebook 模块进行授权时,forge.facebook.authorize API 调用未按预期打开 Facebook 授权窗口。
来自Trigger.IO Facebook Module docs对于forge.facebook.authorize:
Authorize the current user with Facebook. May show a login UI if new permissions are required, or a valid login token is not available (i.e. on first login).
相反,使用以下消息调用错误回调:
{"message":"Login failed","type":"EXPECTED_FAILURE","subtype":null}
在 iOS 模拟器 (v7.0.3) 中运行相同的代码将按预期打开 Facebook Web 登录提示。
调用forge.facebook.hasAuthorized会返回此错误,正如预期的那样:
{"message":"User not logged in or insufficient read permissions","type":"EXPECTED_FAILURE","subtype":null}
对forge.facebook.authorize的调用没有任何权限或受众参数;只是成功和错误回调。
测试配置:
- Trigger.IO v2.1.4
- Facebook 模块 v2.3
- iPhone 5(iOS 7.0.4)
- Facebook iOS 应用程序 v8.0
关于如何使用 forge.facebook.authorize 函数打开 Facebook 登录提示有什么想法吗?
更新#1:
我设法在 iOS 模拟器上重现该错误。我尝试添加 permissions 和 audience 参数,我认为问题是 audience 参数在发送到 Facebook 时没有被解析为字符串,这导致请求出错。
这是日志输出:
[信息] 2014-03-24 17:39:39.750 Forge[9247:a0b] [DEBUG] native 调用:{
[信息] callid = "31F68389-DE82-4F71-A689-213E008A28E6";
[信息]方法=“facebook.authorize”;
[信息] 参数 = {
[INFO]观众= friend ;
[信息]对话框=1;
[信息] 权限 = (
[信息]“读流”,
[信息]“公共(public)行动”
[信息]);
[信息]};
[信息]开始=“1395697179.74”;
[信息]}
[信息] 2014-03-24 17:39:39.937 Forge[9247:1503] [警告]向 Facebook 报告合作伙伴数据时出错
更新#2:
删除权限和受众参数适用于iOS模拟器:
[信息] 2014-03-24 18:28:22.652 Forge[10387:a0b] [DEBUG] native 调用:{
[信息] callid = "22233011-4A9F-41E0-841E-4616E9E944D9";
[信息]方法=“facebook.authorize”;
[信息] 参数 = {
[信息]对话框=0;
[信息] 权限 = (
[信息]);
[信息]};
[信息]开始=“1395700102.606”;
[信息]}
最佳答案
“public_actions”不是有效的权限字符串。
您可能指的是“publish_actions”吗?
完整的权限列表记录在此处:https://developers.facebook.com/docs/facebook-login/permissions/
关于javascript - Trigger.IO Facebook 授权不打开登录页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22620561/