我正在尝试获取Page图片。然而,它总是回来为null。我做错了吗?
FacebookClient facebookClient = new DefaultFacebookClient(accessToken)
def page = facebookClient.fetchObject(PAGE_ID, Page.class);
println page.picture //prints null
任何想法?
答案 0 :(得分:1)
您需要明确询问您感兴趣的字段(否则一切都是null
)。在您的情况下,您需要 picture
:
facebookClient.fetchObject(PAGE_ID, Page.class, Parameter.with("fields", "picture"));
对于所有字段,请检查official page。
答案 1 :(得分:0)
好像你应该有getPicture而不是图片。还有一些页面要求您登录以检索该信息。因此,您可能需要使用访问令牌进行身份验证。
FacebookClient facebookClient = new DefaultFacebookClient(accessToken)
def page = facebookClient.fetchObject(PAGE_ID, Page.class);
println page.getPicture //prints null
答案 2 :(得分:0)
FacebookClient facebookClient = new DefaultFacebookClient(facebookAccessToken, Version.LATEST);
JsonObject jsonObject = facebookClient.fetchObject("/" + userId + "/picture", JsonObject.class,
Parameter.with("type", "large"), Parameter.with("redirect", "false"));
JsonValue jsonValue = jsonObject.get("data");
JsonObject object = jsonValue.asObject();
String profileImageUrl = object.get("url").asString();