我正在尝试获取页面图片。但是它总是返回为空。难道我做错了什么?
FacebookClient facebookClient = new DefaultFacebookClient(accessToken)
def page = facebookClient.fetchObject(PAGE_ID, Page.class);
println page.picture //prints null
有任何想法吗?
我正在尝试获取页面图片。但是它总是返回为空。难道我做错了什么?
FacebookClient facebookClient = new DefaultFacebookClient(accessToken)
def page = facebookClient.fetchObject(PAGE_ID, Page.class);
println page.picture //prints null
有任何想法吗?
您需要明确询问您感兴趣的字段(否则一切都是null
)。在您的情况下,您需要picture
:
facebookClient.fetchObject(PAGE_ID, Page.class, Parameter.with("fields", "picture"));
对于所有字段,请查看官方页面。
似乎您应该使用 getPicture 而不是图片。此外,有些页面需要您登录才能检索该信息。因此,您可能需要使用访问令牌进行身份验证。
FacebookClient facebookClient = new DefaultFacebookClient(accessToken)
def page = facebookClient.fetchObject(PAGE_ID, Page.class);
println page.getPicture //prints null
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();