从图形 API 资源管理器生成的访问令牌生成长期"User"访问令牌。不是应用访问令牌



我的目标是从用户时间线获取公共数据,如状态、提要、用户名、家乡等。我正在使用 Java 中的桌面应用程序,该应用程序使用访问令牌发送 HTTP 请求以获取时间线数据。有两种类型的令牌,其中一种为我提供了我想要的完整数据,另一种则为我提供了部分数据。下面都提到过。

类型 1。单击"获取访问令牌"并授予权限后在图形 API 资源管理器上生成

(这将在 1 小时内过期,并为我提供我想要从用户时间线中获得的所有数据,如状态、ID、用户名、提要等)。为此,我使用以下 url 并对 API 进行 HTTP 调用:https://graph.facebook.com/<Username>?fields=id,name,statuses.fields(message)&access_token=AAACEd这给了我响应 JSON 中提到的所有字段。

类型 2。创建应用程序后生成。

使用 appId 和 appSecret,我生成了一个短期访问令牌。(这将在 1 小时后过期。在此之后,使用 https://developers.facebook.com/docs/howtos/login/extending-tokens/上提到的文档和 url,我能够生成长期存在的访问令牌(这些令牌将在大约 60 天后过期)。

当我在上面的 url 中使用此令牌进行身份验证时,它无法解析我的目标,并且从用户时间线返回有限的信息。它不返回"状态"字段,只返回时间线中的几个公共源。

这里的问题是访问令牌,它给我所有数据在一小时内过期,并且我无法在每小时手动后在我的应用程序中更改它,以及第二个访问令牌,它存在很长时间,但没有给我完整的数据。

所以我想要长期用户访问令牌,而不是应用程序生成的访问令牌,它为我提供了所有数据。 即我想要上面描述的类型 1 的长期访问令牌。延长访问令牌到期时间的过程需要应用 ID 和机密,但 Graph API 资源管理器没有相同的内容。

请建议一种方法来获取类型 1 的长期访问令牌或任何其他方法来实现我的目标。请帮忙。

自 2015 年 7 月起,您现在可以在 Facebook 中轻松创建 60 天的访问令牌。

只需在登录时单击要在此页面上扩展的用户访问令牌上的"调试"按钮 https://developers.facebook.com/tools/accesstoken/

然后,您将在页面底部附近看到一个蓝色的"扩展访问令牌"按钮。

最新更新