当从一个页面加载Facebook提要时,如果提要中存在图片,我希望显示大图。
如何使用graph API?提要中的图片链接不是很大。
谢谢。
发布于 2014-09-23 16:29:06
这是一种获取大图像的新方法。它是在预览方法不起作用后诞生的
/**
* return a big url of facebook
* works onky for type PHOTO
* @param picture
* @param is a post type link
* @return url of image
*/
@Transactional
public String getBigImageByFacebookPicture(String pictrue,Boolean link){
if(link && pictrue.contains("url=http")){
String url = pictrue.substring(pictrue.indexOf("url=") + 4);
try {
url = java.net.URLDecoder.decode(url, "UTF-8");
} catch (UnsupportedEncodingException e) {
StringBuffer sb = new StringBuffer("Big image for Facebook link not found: ");
sb.append(link);
loggerTakePost.error(sb.toString());
return null;
}
return url;
}else{
try {
Document doc = Jsoup.connect(pictrue).get();
return doc.select("#fbPhotoImage").get(0).attr("src");
} catch (Exception e) {
StringBuffer sb = new StringBuffer("Big image for Facebook link not found: ");
sb.append(link);
loggerTakePost.error(sb.toString());
return null;
}
}
}享受您的大图:)
发布于 2012-08-28 21:19:45
Graph API photo object有一个picture连接(类似于user对象的连接):
“相册大小的照片视图。…返回: HTTP 302重定向到图片的URL。“
因此,请求https://graph.facebook.com/{object-id-from-feed}/picture会立即将你重定向到相册大小的照片版本。(f.e不仅用于在浏览器中显示,而且如果f.e.您希望使用设置了follow_redirect选项的cURL将映像下载到服务器。)
编辑:
从APIv2.3开始,不推荐使用提要帖子的/picture边缘。
然而,作为一个字段,图片仍然可以被请求-但它将是一个小的。
但是full_picture也是可用的。
因此,可以使用/{object-id-from-feed}?fields=picture,full_picture来请求这些内容,也可以使用其他提要数据直接请求这些内容,比如下面的/page-id/feed?fields=picture,full_picture,… (必须以相同的方式指定其他字段,如message等)。
发布于 2012-03-27 18:04:57
对我有效的方法:从提要中获取图片链接,并将"_s.jpg“替换为"_n.jpg”
https://stackoverflow.com/questions/9527530
复制相似问题