问题标签 [facebook-access-token]
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.
facebook - 延长访问令牌后,是否会使其有效期再延长 60 天?
如果我在 3 月 1 日请求并获得了访问令牌,并在 30 天后将其延长,它是否会再有效60天,还是需要最终用户重新授权?
我们正在实现一个自动发布功能,它是由我们自己的应用程序中的一个事件触发的。因此,最终用户将无法向 Facebook 展示其 cookie 以验证其身份。我们需要确保我们始终拥有一个有效的访问令牌。
Facebook 的官方文档在这个特定主题上相当含糊。
javascript - 通过向 Facebook API 发送 HTTP 请求来创建帖子
我想通过发送 HTTP POST 在我的 Facebook 页面上发帖。我这样做的方式是创建一个永久的 access_token 用于发布到我的 facebook 页面。问题是 access_token 可以使用 firebug 或任何其他工具轻松获取/检查(因为它是硬编码的)。我怎样才能以不被其他人看到的方式发送它。
facebook - Facebook注册成就access_token问题
解决方案编辑: 原来您不能使用 PHP SDK 返回正确的应用程序令牌,也不能点击开发人员网站应用程序部分中的 OpenGraph 选项,单击“获取代码”并从那里获取应用程序访问令牌。 . 你必须这样做:
原始问题: 使用 PHP SDK,我一直在尝试注册我的成就,但没有成功。我不断收到以下错误:“必须使用应用程序 access_token 调用此方法。”
但是,当我将我正在使用的令牌输入到 opengraph (https://graph.facebook.com/app?access_token=ACCESS_TOKEN) 时,我会正确获取我的应用程序信息。
以下是我迄今为止在注册成就时尝试过的方法:
一切都会回来说它需要一个access_token。
facebook - 第二次交换短期访问令牌?
如果您使用交换短期访问令牌以将其延长至 60 天
当由此返回的访问令牌(AccessToken2)即将到期时,能否用原来的短期访问令牌(AccessToken1ST)换取新的访问令牌(AccessToken3)?
我会对其进行测试,但它只是一遍又一遍地返回相同的访问令牌,因为访问令牌 2 尚未过期。
我知道我可能可以使用访问令牌 2 来执行此操作,但我正在从某个文件中读取访问令牌 1,因为我没有以用户身份登录,我只想读取公共 Facebook 数据,而不必手动更新访问令牌 1(因为我没有对它的写访问权),如果可能的话,宁愿只使用访问令牌 1 来生成访问令牌 3。
devise - 我没有对 fb 用户的离线访问权限 - 我应该在会话中存储朋友列表吗?RoR、设计、Omniauth 和 FBGraph
我通过 facebook 在我的应用程序上对用户进行身份验证。执行此操作时,我获取访问令牌并执行验证。但是,在登录后不久,我将不得不向我的用户展示他们的朋友列表。问题是访问令牌到那时已经过期。
鉴于我正在使用 devise、omniauth 和 fbgraph gem,我该如何执行此操作?
想法:
- 获取新的访问令牌。我该怎么做呢?我是否必须修改我的omniauth_callbacks_controller?
- 我应该将朋友列表存储在会话变量中吗?
我的omniauth控制器:
facebook-access-token - 如何使用 java 获取永久 Facebook 访问令牌
如果您使用 Facebook 图形 API,您可以查看某人的所有公开信息(如果该人将这些信息设为公开),您只需要做几件事:打开浏览器,登录 Facebook 并知道该人的用户 ID#,例如, Mark Zuckerberg - facebook 创始人有用户 ID#4,所以去: https ://graph.facebook.com/4 => 你可以看到基本信息,比如名字,年龄,位置......(想象你改变了i 在 _ https://graph.facebook.com/i中,i 从 1 到 100 万,您可以看到百万用户的信息,只要他们公开设置他们的信息)
或者去这个链接你可以看到更多的信息,比如个人收藏和教育... Facebook(在http://developers.facebook.com/docs/reference/api/中查看更多信息)
我的目标是使用基本的 java url 转到这些链接并获取所有信息(基本上它们是文本)并将它们保存到文本文件中,使用 _https://graph.facebook.com/4 没有问题,但使用第二个链接问题是访问令牌代码是 XXX - 每次都会更改或将在 20~30 分钟后过期,所以我不能再运行我的程序来获取更多数据。问题是无论如何都可以获得永久访问令牌或将其延长更长的时间,请记住我只使用一个小型 Java 程序,与 Facebook 应用程序或其他任何东西无关。先谢谢了!
android - Facebook Single Sign On 注册或登录服务器(Android 和 Ios)
我们正在实施一个项目,用户在该项目中发布并从服务器获取一些信息。场景是用户可以手动创建帐户/登录(提供电子邮件和密码),也可以使用 SSO 使用 Facebook 凭据。我主要实现 Android 部分,但我的问题很笼统。
假设我有一个调用 SSO 的按钮,提示用户提供他的凭据。那么为了创建帐户我应该向服务器发送什么?获取用户的 FB 电子邮件并将我收到的 Access Token 设置为密码?每个 FB 帐户的访问令牌是否唯一且永久,这意味着每次我使用相同的 FB 凭据时,我都会获得相同的访问令牌?
在服务器端是否需要做任何额外的工作?或者服务器是否可以像处理其他用户一样处理使用其 FB 帐户的用户?
每一个澄清都会非常有帮助。先感谢您!
android - 是否可以在 Android 应用程序中使用 extendAccessTokenIfNeeded 扩展 Facebook 令牌?
我认为这可能会影响到很多 Facebook/Android 开发人员,但似乎并没有太多关于这个话题的讨论......
我的问题
有没有人使用 extendAccessTokenIfNeeded 函数成功刷新了令牌?如果您确实成功了,那么设备(或模拟器)运行的是什么版本?
背景
我收到一封来自 Facebook 的电子邮件,说从 2012 年 5 月 1 日起将弃用 offline_access 权限,并且 Facebook 建议升级到他们最新的 SDK。美好的。
我升级到最新的 SDK,官方的 Facebook 应用程序安装在我的设备上,并且(最终!)单点登录似乎工作正常。我收到了 60 天的代币,这又没问题。
当我尝试使用 extendAccessTokenIfNeeded(Context context, ServiceListener serviceListener) 时出现问题。我无法让它在更长的到期时间内刷新我的令牌。我在两次尝试之间等待了 24 小时,但令牌不会刷新。我可以获得刷新令牌的唯一方法是注销并登录。这也发生在我使用示例项目“Hackbook”时。
最明显的答案是我做错了什么,但是,向 Facebook 提交了一份错误报告说......“应该ExtendAccessToken 实际上几乎总是返回错误。” 该报告已被列为优先“愿望清单”。
extendAccessTokenAsNeeded() 的替代方案
在Facebook 文档中,关于 offline_access 弃用令牌可以使用 Graph API 进行扩展。但是,这样做的缺点是需要在 URL 中包含“App Secret”。一个优点是用户不需要在他们的设备上安装官方的 Facebook 应用程序。
其他想法和顾虑
通过将 Facebook.java 中的 extendAccessTokenIfNeeded 函数更改为始终返回 true,我想我让它刷新一次。(我说“认为”的原因是因为它不会重复这种行为,我怀疑我必须再等 24 小时才能再次成功)
我注意到 Hackbook 需要导入AndroidHttpClient。这仅适用于 API 8 及更高版本。这是否意味着 Facebook SSO(特别是令牌刷新)只能在 API 8 及更高版本的设备上运行?
SDK 中包含的Facebook.apk相当陈旧。也许这就是为什么令牌在运行 API 8 及更高版本的模拟器上不刷新的原因?
最后,所有这些都只与那些安装了官方 Facebook 应用程序的人有关!对于那些没有官方 Facebook 应用程序的人,需要完成另一种方法(现在只是抱怨!)
相关 Facebook 链接
GitHub 上的 Facebook-Android-SDK
相关堆栈溢出问题
Facebook 60 天访问令牌和已弃用的 Offline_Access
facebook - 访问令牌 Facebook 图形 api?
在 FB 上创建应用后,我得到一个访问令牌 XXX
当我打开https://graph.facebook.com/me/likes?access_token=XXX时,它确实显示了我喜欢的所有信息。
但是当我打开从另一个用户那里看到(谁公开了这些信息,比如https://graph.facebook.com/4/likes?access_token=XXX)我什么都没有
有人可以向我扩展为什么和任何想法可以解决吗?
android - 在 Android 应用中获取刷新的 Facebook 令牌的代码是什么?
我正在开发一个 Android 应用程序。随着 Facebook 的离线访问权限即将被弃用,我正在尝试使用 Graph API 来扩展 Facebook 令牌。
谁能提供详细的代码来演示如何将上面的代码实现到android应用程序中并获取刷新的Facebook令牌?
感谢您的时间。
更新二:
进步(我认为)!
将完整 URL 与 facebook 请求方法一起使用会导致将基本 URL 添加到 URL 的开头所以而不是
应该使用
但是我现在收到响应 {"error":{"message":"Error validating application. Invalid application ID.","type":"OAuthException","code":190}}
更新一:
这是我尝试过的。代码完成,即调用侦听器上的 OnComplete,但响应不包含新的访问令牌或到期值。
这是我的 RefreshListener 版本...
代码完成,即调用侦听器上的 OnComplete,但响应不包含新的访问令牌或到期值。回应是...
当我将相同的 URL(带有字母数字当前令牌值)放入 Web 浏览器时,响应确实包含访问令牌。
相关信息
Facebook 的 offline_access 权限将于 2012 年 5 月 1 日弃用
请不要建议在 onResume() 中使用 extendAccessTokenIfNeeded 函数。我也遇到了麻烦,这就是我正在研究 Graph API 令牌刷新的原因:-)
相关堆栈溢出问题
是否可以在 Android 应用程序中使用 extendAccessTokenIfNeeded 扩展 Facebook 令牌?(我的问题)
在 5 月 1 日后弃用后,offline_access 将如何工作?
保护用于 extendAccessToken 使用的应用程序机密 (Java/Android)
相关 Facebook 链接