我正在尝试复制以下请求(我用Facebook的图形浏览器详细说明了这一点)
POST /{page_id}/subscribed_apps?subscribed_fields=feed,mention
带有附带的页面访问令牌。我从该请求中得到响应是
{
"success": true
}如何使用RestFB发出相同请求?到目前为止,我已经想出了:
FacebookClient client = new DefaultFacebookClient(pageAccessToken, Version.VERSION_8_0);
JsonObject result = client.publish(
String.format("/%s/%s", pageId, "subscribed_apps"),
JsonObject.class,
Parameter.with("subscribed_fields", "feed,mention"));但我得到的只是:
com.restfb.exception.FacebookOAuthException: Received Facebook error response of type OAuthException: (#100) Parameters do not match any fields that can be updated (code 100, subcode null) 'null - null'发布于 2020-09-16 06:04:15
为了使这更容易和可读性,我建议您尝试以下代码:
FacebookClient client = ne DefaultFacebookClient(pageAccessToken, Version.LATEST);
GraphResponse result = client.publish("me/subscribed_apps",
GraphResponse.class,
Parameter.with("subscribed_fields","feed,mention"));
if (result.isSuccess()) {
// do some stuff
}这样,您既不需要page id,也不需要String.format。页面id已经连接到页面访问令牌,有时这会带来更好的工作结果。
RestFB为这类请求提供了一个名为GraphResponse的特殊对象。它是一个简单的对象,提供了一些方便的方法。只要你没有得到一个完整的对象,像用户或post,这是一个更好的方法;)
https://stackoverflow.com/questions/63908192
复制相似问题