2015-01-14 20 views
0

注意:我意识到这有点没有建设性,我不确定这是不是最好的问题。请告诉我改进。Facebook的静态链接中的额外参数是什么?

你知道你可以通过点击右键并选择'查看图像'来获得Facebook照片(或视频)的链接。结果是这样的链接: https://fbcdn-sphotos-h-a.akamaihd.net/hphotos-ak-xpf1/v/t34.0-12/10933156_10203060010133603_822853448_n.jpg?oh=dba759bccf50f4ae560b537fa9c00220&oe=54B175C2&__gda__=1420909750_63a4972d4a589cd466a895e276fc47eb

而且这是一个公共连接,每个人都可以访问。 但是,我将这个链接保留在我的打开标签中几天,后来它不再工作。我回到Facebook上的照片,并再次“查看图像”。我得到以下链接:https://fbcdn-sphotos-h-a.akamaihd.net/hphotos-ak-xpf1/v/t34.0-12/10933156_10203060010133603_822853448_n.jpg?oh=70ebf67dc3467b8005e2127c4c2a176e&oe=54B8B602&__gda__=1421384950_1bad935cd7546335702cca5849a374fe

请注意,这两个链接在.jpg部分是相同的,但它们的参数不同。

有什么方法可以找出这些参数是什么,并生成它们?也就是说,如果通过链接达到.jpg我可以使用一些逻辑来获得正确的参数来查看内容(如简介ID,日期,编码等)

回答

2

要获取图像的更新链接,您需要使用对象标识通过图形API获取它。

例子:https://graph.facebook.com/<object_id>?fields=images&access_token=<access_token>

该调用返回一个JSON对象与图像的所有尺寸和更新的链接:

{ 
    "height": 1365, 
    "source": "https://fbcdn-sphotos-e-a.akamaihd.net/hphotos-ak-xpa1/t31.0-8/10904088_10152667653291915_7973131445285931474_o.jpg", 
    "width": 2048 
} 

你可以通过图形API或图像的链接对象ID在网络界面上。网址示例:https://www.facebook.com/photo.php?fbid=10152667653291915 - fbid参数是您需要的对象ID。

+0

!这是我所寻找的。不幸的是,图像来自一个消息附件,并且,AFAIK,那些不能够访问/再看到[这个线程](https://developers.facebook.com/bugs/153137724878722?browse=external_tasks_search_results_52517d949d48d3494815922)。 –

0

不。这些是CDN链接,它们到期。并且它在设计时会过期,因此不会生成其他网址

+0

我从来没有注意过它。你知道他们什么时候到期吗?我的意思是,我有其他更旧的链接,但尚未过期。另外,为什么会做出这个设计决定? –

+0

因为你不应该存储酷! – WizKid

相关问题