我正在从页面解析Facebook提要,我从data.picture的feed中获取图片;如果Feed中有图片链接
这就是我获取数据的方式 函数getFeeds(令牌) {
var row;
var tableData = [];
var json, data, name, picture, description, likes;
Ti.Facebook.requestWithGraphPath(Titanium.App.Properties.getString("pageID") +'/feed', {access_token: Token}, 'GET', function(e){
if (e.success) {
json = JSON.parse(e.result);
for (i = 0; i < json.data.length; i++) {
if (json.data[i].message) {
row = addRow(json.data[i]);
tableData.push(row);
}
// }
} activityScreen.hide();
table.setData(tableData);
} else {
if (e.error) {
//alert(e.error);
} else {
alert("#serverfail...");
}
}
});
}
我得到的图片很小。
如何获得更大的照片?
感谢名单
答案 0 :(得分:6)
如果您不想发出第二个图形请求,只需将图片网址末尾的s替换为n。
所以http://photos-h.ak.fbcdn.net/hphotos-ak-ash3/12345_12345_12345_s.jpg变成了http://photos-h.ak.fbcdn.net/hphotos-ak-ash3/12345_12345_12345_n.jpg
答案 1 :(得分:5)
为了从页面提要帖子中获取更大的图片,首先需要检查提要的类型,如果类型等于照片,那么您可以在返回结果中找到额外的“对象ID”。因此,如果您发送另一个图形api调用,请使用此对象ID。在返回结果中,您将有一个名为“images”的字段。在图像下,您将拥有多个尺寸的图像。从那里,您可以选择所需的尺寸。 “图片”字段中的默认值是缩略图大小图片,这就是图片大小较小的原因。 (In the fb page, checkout the example link)
https://graph.facebook.com/feed ===>
"picture": "https://fbexternal-a.akamaihd.net/safe_image.php?d=AQB3Wv9mtyMdfNfw&w=90&h=90&url=https%3A%2F%2Fgeneralassemb.ly%2Fassets%2Fstatic%2FWin-A-Trip-To-SF-94fb4a6d732c86534f23e9a9ec2c2d4d.jpg",
"link": "https://generalassemb.ly/win/trip-to-sf",
"name": "Break Into the Big Leagues",
"type": "link",
"type": "photo",
"status_type": "added_photos",
"object_id": "10151322059288553",
如果您使用此“object_id”
https://graph.facebook.com/10151322059288553
"height": 300,
"width": 720,
"images": [
{
"height": 853,
"width": 2048,
"source": "https://fbcdn-sphotos-b-a.akamaihd.net/hphotos-ak-prn1/s2048x2048/16985_10151322059288553_286780821_n.jpg"
},
{
"height": 392,
"width": 940,
"source": "https://fbcdn-sphotos-b-a.akamaihd.net/hphotos-ak-prn1/16985_10151322059288553_286780821_n.jpg"
},
答案 2 :(得分:4)
据我所知,您无法更改safe_image.php链接返回的照片大小,因此如果链接不是Facebook对象,您可以做的最好就是提取“网址”从链接中查询字符串变量,urldecode并抓取原始图片。
e.g。如果你的网址(来自帖子的'picture'属性)是
https://fbexternal-a.akamaihd.net/safe_image.php?d=AQBMV0YW8BCmCBMB&w=154&h=154&url=https%3A%2F%2Ffbstatic-a.akamaihd.net%2Frsrc.php%2Fv2%2Fy6%2Fr%2FYQEGe6GxI_M.png
并存储在变量url
中,然后返回完整尺寸图片的网址:
decodeURIComponent(url.match(/(url=)(.+)$/)[2]);