当前位置:  开发笔记 > 编程语言 > 正文

Facebook App登录:如何控制我得到的图片网址的截止日期?

如何解决《FacebookApp登录:如何控制我得到的图片网址的截止日期?》经验,为你挑选了1个好方法。

我正在开发一个使用facebook登录的应用程序.登录后,用户必须设置其他信息和个人资料图片,图片也是从登录的Facebook帐户中提供的.现在,整个帐户详细信息(包括该配置文件图片的URL)都保存在我的数据库中.

令我惊讶的是,个人资料图片突然停止工作.在浏览器中打开它的URL给我这条消息"URL签名已过期"

https://scontent.xx.fbcdn.net/hphotos-xpa1/v/t1.0-9/p720x720/10846350_10204966809307370_2779189783437306470_n.jpg?oh=245bbada6c23f280a1e531e724be85ed&oe=56894D69

下载这些照片并将它们保存到我自己的服务器对我来说不是一个真正的选择.有什么办法可以让这个URL持久耐用吗?



1> CBroe..:

是的,Facebook的CDN URL可能会过期 - 您不应该存储它们以供长期使用.

但您可以通过简单地引用来请求任何用户的个人资料图片(只要您拥有其全局/应用范围的用户ID)

https://graph.facebook.com/4/picture // Mark Zuckerberg’s profile pic

- 该URL发出重定向到图像的当前CDN URL.

该图像相当小,但50px x 50px - 您可以https://graph.facebook.com/4/picture?type=large用来请求更大的版本.这将为您提供200px x 200px的配置文件图像(或者如果用户没有上传方形图像,则接近该图像.)

请注意,某些图片需要检索访问令牌.例如https://graph.facebook.com/72256131540/picture ,除非您添加如下所示的访问令牌,否则返回问号的通用图像:

https://graph.facebook.com/72256131540/picture?access_token=


正如响应中指出的那样,重新获取图像非常简单(甚至可以自动化).似乎不需要令牌存在(只是用户标识符).如果禁用重定向,此API还应为JSON响应提供新的CDN URL:https://developers.facebook.com/docs/graph-api/reference/user/picture/
CBroe,您是否知道其他提供商也有类似之处。我向小学部要求Google,Instagram和VKontakte
推荐阅读
落单鸟人
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有