Trigger.IO Facebook授权不打开登录页面
Trigger.IO Facebook Authorize Not Opening Login Page
tl;dr
第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.authorizeAPI调用未按预期打开Facebook授权窗口。
来自forge.Facebook.authorize的Trigger.IO Facebook模块文档:
使用Facebook授权当前用户。如果需要新的权限,或者有效的登录令牌不可用(即首次登录时(,则可能显示登录UI。
相反,调用错误回调时会显示以下消息:
{"消息":"登录失败","类型":"EXPECTED_FAILURE","子类型":null}
在iOS模拟器(v7.0.3(中运行相同的代码会按预期打开Facebook web登录提示。
调用forge.facebook.hasAuthorized返回此错误,如预期:
{"消息":"用户未登录或读取权限不足","类型":"EXPECTED_FAILURE","子类型":null}
对forge.facebook.authorize的调用没有任何权限或受众参数;只有成功和错误回调。
测试配置:
- 触发器.IO v2.1.4
- Facebook模块v2.3
- iPhone 5(iOS 7.0.4(
- Facebook iOS应用程序8.0版
关于如何使用forge.facebook.authorized功能打开facebook登录提示,有什么想法吗?
更新#1:
我设法在iOS模拟器上重现了这个错误。我尝试添加权限和受众参数,我认为问题是在发送到Facebook时,观众的参数没有被解析为字符串,这导致请求出错。
以下是日志输出:
[ INFO] 2014-03-24 17:39:39.750 Forge[9247:a0b] [DEBUG] Native call: {
[ INFO] callid = "31F68389-DE82-4F71-A689-213E008A28E6";
[ INFO] method = "facebook.authorize";
[ INFO] params = {
[ INFO] audience = friends;
[ INFO] dialog = 1;
[ INFO] permissions = (
[ INFO] "read_stream",
[ INFO] "public_actions"
[ INFO] );
[ INFO] };
[ INFO] start = "1395697179.74";
[ INFO] }
[ INFO] 2014-03-24 17:39:39.937 Forge[9247:1503] [WARNING] Error reporting partner data to Facebook
更新#2:
删除权限和受众参数适用于iOS模拟器:
[ INFO] 2014-03-24 18:28:22.652 Forge[10387:a0b] [DEBUG] Native call: {
[ INFO] callid = "22233011-4A9F-41E0-841E-4616E9E944D9";
[ INFO] method = "facebook.authorize";
[ INFO] params = {
[ INFO] dialog = 0;
[ INFO] permissions = (
[ INFO] );
[ INFO] };
[ INFO] start = "1395700102.606";
[ INFO] }
你的意思可能是"publish_actions"吗?
此处记录了完整的权限列表:https://developers.facebook.com/docs/facebook-login/permissions/
- 在自定义mean.io包中使用angular-chart.js作为依赖项
- YUI3 IO实用程序是否可以根据给定的内容类型标头值自动序列化数据
- Webpack/Rect:遵循egghead.io教程,但出现错误:您可能需要一个合适的加载程序来处理此文件类型
- 使用acess代币登录Facebook,并通过网络应用程序离线发布
- 如何使用Socket.io将命令从客户端发送到服务器
- 尝试使用Phonegap进行php登录
- Facebook登录按钮没有'不能在Firefox上工作
- Webdriver.io pageObject模式-通过传递参数来定义元素选择器
- 使用javascript反复检查用户在facebook上的登录状态
- Socket.IO未定义变量
- Firebase-登录时获取url
- Socket.io on Mozilla Rhino
- 如何在Ionic2测试版中包含Ionic.io服务
- BrowserId登录请求在文档加载时被调用
- 通过iframe登录到远程站点
- Node.js、socket.io 和 mongojs - 带有 socket.io 的登录表单
- 插座.IO - 同一登录用户在两个不同浏览器中使用 socket.id
- 用户登录后如何调用 socket.io 授权
- Trigger.IO Facebook授权不打开登录页面
- 当新用户登录时,使用socket io向谷歌地图添加一个标记