App提供的访问令牌问题

时间:2011-10-11 23:46:53

标签: facebook facebook-access-token

我们最近推出了一款新应用,其中一项功能是在用户喜欢特定网页时提供折扣。我已成功测试了众多帐户的功能,我们继续推出。我们使用图API来检索他们喜欢的所有页面的列表,并检查所需的页面是否在那里:

https://graph.facebook.com/me/likes?access_token=ACCESS_TOKEN

我们已经有一些用户与我们联系并提醒我们,即使他们喜欢该页面,他们也没有看到折扣。我们能够请求其中一个帐户的详细信息,并观察以下内容。

当应用程序获得授权后,Facebook会将这些应用程序中的访问令牌发送到我们的网站(我们将其用于图形API调用)。

https://example.com/?ref=ts

POST /?ref=ts HTTP/1.1
...
Set-Cookie: fbs_uid=%22uid3D%26access_token%3[ACCESS_TOKEN_REMOVED]%26expires%3D1318381200%26sig%3Dd0b6fdf09befedf022cdea8b58887348%22; expires=Wed, 12-Oct-2011 01:00:00 GMT; path=/

所以你可以在那里看到访问令牌。奇怪的是,当我们尝试使用Facebook提供的访问令牌进行API调用时,它会返回一个空结果(即使他们喜欢页面)再次 - 这只适用于某些帐户。更令人困惑的是,当我们以同一会话(https://developers.facebook.com/docs/reference/api/)登录并点击/ me / likes链接进入Facebook Developers页面时,我们得到了用户喜欢的完整列表,但具有不同的访问令牌。

因此,为Facebook提供的访问权限似乎不足以提取数据。这只影响某些帐户,而不影响其他帐户,所以我想知道是否存在某种形式的配置问题,但是从我的立场来看,我没有看到任何解决方法,因为facebook提供的数据显示不正确。

使用Facebook提供的访问令牌,我们不会收到任何错误(即我们没有收到“验证访问令牌的错误”),因此访问令牌会进行验证。

1 个答案:

答案 0 :(得分:1)

提示您无法使用的访问令牌,看看Facebook对此有何看法。它可能会为您提供有关错误的线索。

https://developers.facebook.com/tools/lint