Spring Social Facebook:获取Null照片信息(网址)Only Id不为空

时间:2015-12-02 10:21:12

标签: spring facebook facebook-graph-api spring-social-facebook profile-picture

我已经能够使用以下内容检索相册列表:

final Facebook facebook = new FacebookTemplate(facebookAccessToken, appName);

final PagedList<Album> albumList = facebook.mediaOperations().getAlbums();


for (Album album : albumList) {
  if (album.getName().equalsIgnoreCase("Profile Pictures")) {
    PagingParameters pagingParameters = new PagingParameters(NO_OF_FB_PHOTOS, null, null, null);
    final PagedList<org.springframework.social.facebook.api.Photo> profilePhotos = 
                           facebook.mediaOperations().getPhotos(album.getId(), pagingParameters);

我已经确认相册列表中包含正确数量的相册,就像我的脸书帐户和相册ID匹配一样。但是,profilePhotos&#39; “个人资料图片”相册中的照片对象包含空图像&amp;链接;我只能获得Photo对象的ID和createdDate ....

我已在客户端获取user_photos权限以获取访问令牌。我还使用Facebook的图形资源管理器来查询使用此accessToken,我能够获取照片网址...有人可以帮助指出我错过的内容吗?非常感谢你

更新:我想知道它是否是因为: &#34;新的Facebook API v2.4改变了发送响应的方式。现在您需要在请求URL中指定您希望API返回哪些字段,以便/我成为/me?fields=email,name,etc..." (来自facebook graph api returns only name and id for some websites

1 个答案:

答案 0 :(得分:1)

正如上面的评论中所提到的,v2.4和Facebook的API需要您在请求的fields参数中指定响应中所需的字段 - 默认情况下返回的字段非常少,否则,通常只是名称和身份,有时创建时间等

如果您使用的SDK未在其自己的代码或示例中考虑到这一点,您可以手动将?fields=X,Y,Z添加到您的请求字段x,y,z的调用中