所以我目前正在尝试从我为我所属的组织创建的FB页面中检索事件图像。当打电话给graph.facebook.com/{event-id}/picture时,我得到一个荒谬的小50x50图像。但是,文档列出了'type'arg(https://developers.facebook.com/docs/graph-api/reference/event/picture/)的一些大小。当我指定一个大型,我得到一个200x200px图像。
有'height'和'width'字段,但如果我指定大于200px的任何内容,例如height:400和width:350,我会返回200x200 pic。从以前的SO线程来看,这似乎不是一个问题,所以我有兴趣听听是否有其他人遇到过这个问题。
注意:我正在使用Koala gem(https://github.com/arsduo/koala)与API进行交互,但直接浏览器调用返回相同的结果。
答案 0 :(得分:4)
事实证明,这是封面图片的API。你会认为事件图片文档至少会提到它......但情况并非如此。
封面照片API: https://developers.facebook.com/docs/graph-api/reference/cover-photo/
这对我有用:
String eventCoverImage = "/v2.8/" + eventId;
Bundle params = new Bundle();
params.putBoolean("redirect", false);
params.putString("fields", "cover");
new GraphRequest(
AccessToken.getCurrentAccessToken(),
eventCoverImage,
params,
HttpMethod.GET,
new GraphRequest.Callback() {
public void onCompleted(final GraphResponse response) {
// thread is necessary for network call
Thread thread = new Thread(new Runnable() {
@Override
public void run() {
try {
String picUrlString = (String) response.getJSONObject().getJSONObject("cover").get("source");
URL imgValue = new URL(picUrlString);
Bitmap eventBitmap = BitmapFactory.decodeStream(imgValue.openConnection().getInputStream());
} catch (Exception ex) {
ex.printStackTrace();
}
}
});
thread.start();
}
}
).executeAsync();
此外,这可以帮助您尝试使用api解决问题 https://developers.facebook.com/tools/explorer