我们可以通过在代码中提供电子邮件和密码来获取Facebook访问令牌吗?

时间:2012-05-20 21:33:44

标签: facebook oauth-2.0 access-token facebook-authentication

我想从这张专辑中获取照片网址:

https://graph.facebook.com/175758929145317/photos

如果您在不提供访问令牌的情况下访问它,那么您将获得空数据:

{
   "data": [

   ]
}

但是如果你先在这里生成一个访问令牌:

http://developers.facebook.com/tools/explorer?method=GET&path=175758929145317%2Fphotos

然后你将它附加到这样的网址,你可以得到数据:

https://graph.facebook.com/175758929145317/photos?access_token=your_access_token

但是,此访问令牌不能永久使用,它将过期。

我想从https://graph.facebook.com/175758929145317/photos动态拍摄照片网址并在网页上显示图片,查看此网页的人不需要拥有Facebook帐户。

因此,每次查看网页时,我都在考虑是否可以简单地使用我的Facebook帐户登录(通过硬编码电子邮件和密码),然后获取新的访问令牌,以便我可以获取照片网址。

这可能吗?或者我的问题有更好的解决方案吗? (我不能要求专辑所有者将他的专辑改为公开)

1 个答案:

答案 0 :(得分:3)

这是不可能的,你不能使用硬编码(或存储的)登录/密码在FB中进行身份验证 - 根据Facebook policy

  

<强>予。特点和功能

     

...

     

3 - 您不得包含代理,请求或功能   收集Facebook用户名或密码。

你能做什么呢?

  1. 为自己获取(然后扩展)令牌(请参阅本文档中的方案4:https://developers.facebook.com/roadmap/offline-access-removal/)。该扩展令牌应该有效期为60天 - 然后是might be able to extend it again

  2. 尝试使用APPLICATION令牌获取这些照片 - 如果有效,那么令牌永远是好的:https://developers.facebook.com/docs/authentication/applications/