相关疑难解决方法(0)

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

我正在开发一个使用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持久耐用吗?

facebook facebook-graph-api

21
推荐指数
1
解决办法
3万
查看次数

来自facebook API的图片提供错误"错误的URL日期参数"

我有数千张来自facebook的图像存储在我的数据库中.但是最近我注意到存储在数据库中的图像返回了这个错误:"错误的URL日期参数"

似乎我们不应该长时间存储Facebook图像URL,因为它们可能会过期.

我的问题是:如果我拥有的唯一信息是旧图像网址,如何从facebook API获取更新的图片网址?也许我可以从旧的URL中提取特定的数据ID,然后查询facebook API以获取新的URL?

以下是旧(过期)网址的示例:

https://scontent.xx.fbcdn.net/v/t1.0-9/15380747_1075074945947776_5898791779893134744_n.jpg?oh=7d445f227aa1922bebce375eae991a05&oe=597D1B48
Run Code Online (Sandbox Code Playgroud)

php facebook facebook-graph-api

8
推荐指数
1
解决办法
6048
查看次数

如何有效地检索Facebook照片URL的截止日期并在其到期前更新?

主要问题:

  • 应用程序从Facebook照片CDN缓存URL
  • 照片会在某个时候到期

我的"技术"问题:

  • Facebook CDN"过期"标题似乎不可靠(或者我不知道如何处理它们)

使用CURL检索到期日期:

  • curl -i -X HEAD https://scontent-b.xx.fbcdn.net/hphotos-xap1/v/t1.0-9/q82/p320x320/10458607_4654638300864_4316534570262772059_n.jpg?oh=9d34386036754232b79c2208c1075def&oe=54BE4EE2

  • 返回前一分钟: Mon, 05 Jan 2015 01:34:28 GMT

  • 现在再次调用它返回: Mon, 05 Jan 2015 01:35:27 GMT

  • 两次"Cache-Control"都返回相同的内容: Cache-Control: max-age=1209600

至今:

  • 看起来最可靠的方法之一就是让背景工作一直检查照片,但感觉有点"错误",比如"暴力强迫".
  • 有一个后台工作可能会允许过期的图片提供到这个照片网址"更新"的那一刻

我的问题是:

  • 我应该使用max-age参数,即使是艰难的,它似乎也没有改变?
  • 有没有可靠的方式使用Facebook的CDN URL?
  • 关于如何实现这一点的任何其他想法?
  • <笑话>应该使用facebook API来惩罚行为不端的程序员吗?</ joke>

可能的解决方案 ?

  • 在提供任何CDN URL之前,请检查Facebook以获取最新的URL

    〜>会慢慢减慢我的要求

  • 有后台工作续订URL和到期日期

    〜>当工作没有"抓住"它们时,可能会有过期的照片

  • 将照片下载到我自己的CDN

    〜>不是我猜的好习惯

更新:〜>也许Tinder实际上将用户的图片缓存在他们自己的CDN上:https://gist.github.com/rtt/10403467所以看起来facebook有点好吗?

facebook photo cdn

5
推荐指数
1
解决办法
4663
查看次数

标签 统计

facebook ×3

facebook-graph-api ×2

cdn ×1

photo ×1

php ×1