问题标签 [facebook-authorization]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
wordpress - 在 PHP SDK 中使用 getUser 获取用户 ID 时遇到问题
我很难让 Facebook PHP SDK 与我正在尝试修复登录流程的 Wordpress 插件一起使用。我遇到的问题是 getUser()总是返回 0 即使肯定有用户登录。基本上,我的代码工作如下:
我有一个选项页面(在 wordpress 中),当它被加载时会创建一个包装类的实例,或者 PHP SDK Facebook 类的实例,如下所示:
此包装器的构造函数创建 PHP SDK Facebook 类的实例并保存它,同时还设置一些类变量并做一些工作来管理保存在插件中的会话。
然后在选项页面中有一个按钮,它是一个指向由 Facebook 对象生成的 login_url 的链接,即 getLoginUrl()。使用包装类以这种方式调用登录 URL:
/li>这里的 redirect_uri 是 wordpress 中的插件选项页面,当页面重新加载时,有代码检查登录过程是否正常完成。它通过查看url 是否包含'code' 变量来做到这一点,即是否设置了$_REQUEST['code']。(这是 FB 在成功完成登录/权限过程时所做的。
问题: 如果在请求对象中设置了“代码”,我想我应该能够在 facebook sdk 类上调用 getUser() 并获取用户 ID。这就是我遇到问题的地方。getUser()总是返回 0,我一直无法弄清楚为什么。
然而,我注意到的一件事是,如果我执行 var_dump($_SESSION),则数组为空。在 PHP 错误日志中,我有以下 PHP 警告:
然而,menu-header.php 中的第 92 行如下:
我在这里看不到任何会写标题的东西。所以我在这一点上相当难过。
有人对这里可能发生的事情有任何想法吗?任何帮助都会非常棒。
asp.net - Facebook 应用程序停止发布到页面墙(用户没有足够的管理权限)
自 11 月 6 日以来,我的应用程序再次停止发布到墙上并引发授权错误。我使用带有以下代码的 C# SDK:
应用程序现在抛出以下异常:
(OAuthException - #200) (#200) 用户没有足够的管理权限来执行此页面上的此操作。作为参考,我是页面管理员。该应用程序具有发布到墙的权限,我可以使用相同的脚本检索提要帖子。
这一直有效到 2012 年 11 月 6 日,并且是今年第三个实例导致我的应用程序从 FB 方面摔倒。权限都已检查,我有权访问所述页面。
任何想法将不胜感激。
facebook - 如何测试 2012 年 12 月与离线访问相关的重大更改?
我们有一个产品允许人们将帖子安排到 Facebook。我们依赖离线访问权限,计划于 12 月 5 日删除。
我们认为我们已经实现了正确的 60 天会话扩展逻辑,但在测试时遇到了困难。
我们创建了一个新的测试 Facebook 应用程序并启用了“2012 年 12 月重大变更”迁移设置。新用户授权新应用程序(我们仍然请求offline_access
许可)。然后我们扩展会话,它返回相同的会话令牌,没有expires
参数。当我们使用Access Token Debugger时,它表示令牌永不过期。
我们尝试在没有通过offline_access
许可的情况下进行授权,但永远无法超过 5760(4 小时)的到期时间,因此似乎仍然需要通过。
我们非常想测试重大更改,但我们无法创建会话过期且必须不断扩展的场景。我们如何测试这个?
authentication - 是否可以在没有 Facebook 安装应用程序的情况下进行身份验证?
我正在为公司的活动建立一个公众投票系统。Facebook auth 将是一种可行的实施方式。问题是客户特别不希望将应用程序安装在选民配置文件中。有没有办法在不安装应用程序的情况下对用户进行身份验证,或者安装应用程序通常是流程的核心?
提前致谢!
facebook - 如何强制登录的客户重新认证?
我们正在开发一个应用程序,我们将使用 Facebook 对用户进行身份验证。我们有一项业务要求,客户需要重新验证才能进入“我的个人资料”部分。即当客户尝试进入“我的个人资料”部分时,他们将被视为已识别但未通过身份验证。
要查看类似的示例:访问 Amazon.com -> 登录 -> 将任何商品添加到购物车 -> 继续结帐。此时,系统会要求您重新输入凭据。
是否有允许我这样做的 Facebook API?顺便说一句,如果客户选择不重新进行身份验证,我不应该注销客户。
如果已经问过这个问题,我们深表歉意——请指点我相关的线程。
android - Session.StatusCallback Facebook Android sdk3.0的onActivityResult和onComplete的区别
我正在使用 Facebook Android sdk3.0。用户通过 Facebook 成功登录后,我想做一些事情。我应该在内部实现它onActivityResult
还是实现它的onComplete
功能Session.StatusCallback
?
其实这两者有什么区别吗?我可以假设 Session.StatusCallback onComplete 总是在之后调用onActivityResult
吗?
authorization - 仅在 facebookSessionLoginBehavior.ForcingWebView 等网络上登录并请求许可,但也需要授权
我不确定这是否是正确的地方,但这是我的问题。我正在统一为 ipad 做游戏,我正在使用 prime31 的社交网络插件。
情况:
当您到达关卡结束时,游戏会为您提供分数并询问您是否要将其提交到 Facebook。如果你这样做了,我的脚本我已经完成了一个系统来检查你是否登录,如果你没有登录,它会要求你登录,然后系统检查应用程序是否具有发布权限,如果没有,它会询问你。如果所有这些都是真的,它会直接在你的墙上发布一条消息。所以希望询问部分只需要完成一次。
问题:
当 ipad 在游戏和 facebook 应用程序之间交换登录时,ipad 会关闭游戏以节省内存。我试图减少场景,但很难减少它。所以我想也许我应该在游戏中打开那个 facebook 登录和授权。为此,我正在使用这条线:
setSessionLoginBehavior(FacebookSessionLoginBehavior.ForcingWebView);
它完全符合我的要求,并没有真正崩溃。但问题是它只适用于登录,当我询问发布权限时,它会切换到 facebook 应用程序来询问权限并因此崩溃。
那么如何以与 FacebookSessionLoginBehavior.ForcingWebView 相同的方式请求权限。
非常感谢您的帮助。
鲍里斯
facebook - Facebook 在删除应用程序后发送授权的签名请求
我正在开发一个 facebook 画布应用程序并出于测试目的,有时我会转到我的帐户设置并删除该应用程序(以强制重新授权该应用程序)。
我面临的问题是,即使在我这样做之后,当我访问该应用程序时,Facebook 仍然会向我发送一个带有 user_id 和有效 oauth_token 的签名请求,因为我已经授权了该应用程序。
facebook 是否有任何缓存或延迟将我的删除考虑在内?
可能发生了什么?
android - 在重新授权期间要求用户提供登录凭据
我正在尝试将新的 Facebook SDK 3.0 实施到我的 Android 应用程序中,但遇到了问题。我遇到的问题是要求用户再次登录以授予发布(“post_to_wall”)权限,即使用户已经登录并具有读取权限。仅当用户未安装 FB 应用程序时才会发生这种情况。如果他安装了 FB 应用程序,则只要求他授予权限。
这就是我实现登录的方式:
这是回调的调用方法:
这是我添加到调用登录的活动的 onActivityResult 方法的代码:
这就是我要求新权限的方式:
我试图找出更多关于这个问题的信息,但我只发现了一些暗示这是有意的,但我还没有找到任何具体的东西。
这是默认行为吗?如果是这样,有没有办法解决它?或者,也许我做错了什么?
谢谢您的帮助。
facebook - 我可以强制用户在 facebook 登录后完成注册,是否违反 TOS?
简单的问题,我有 facebook 应用程序,这基本上是我的网站 1:1,但在 facebook iframe 中。
我想在用户使用 facebook 登录后向他显示一个注册表单,其中包含最常见的字段 - 用户名、电子邮件、密码。注册后,我想保存 facebook ID 并为该用户创建个人资料。
用户通过 facebook 进入网站后询问用户名/密码/电子邮件不是违反 facebook TOS 吗?
萨克斯