根据https://developers.facebook.com/docs/reference/api/,我们可以评论一下。我可以发表评论,但我不知道如何评论。我在下面写了一个代码来确认,语法是否正确加上它也给出了一个例外。
static private String MY_ACCESS_TOKEN = "AAACEdEose0cBAARk6nVpaOZCTW3l4q";
FacebookClient facebookClient = new DefaultFacebookClient(MY_ACCESS_TOKEN);
FacebookClient publicOnlyFacebookClient = new DefaultFacebookClient();
User user = facebookClient.fetchObject("me", User.class);
Page page = facebookClient.fetchObject("abc", Page.class);
System.out.println(user.getId());
FacebookType publishMessageResponse = facebookClient.publish(user.getId()+"/feed", FacebookType.class, Parameter.with("message", "hello"));
上面的代码工作正常,但是如果喜欢评论,下面的代码不起作用。
System.out.println("Published message ID: " + publishMessageResponse.getId());
facebookClient.publish(publishMessageResponse.getId()+"/likes", FacebookType.class, null);
xception in thread "main" java.lang.NullPointerException
at com.restfb.BaseFacebookClient.verifyParameterLegality(BaseFacebookClient.java:325)
at com.restfb.DefaultFacebookClient.makeRequest(DefaultFacebookClient.java:456)
at com.restfb.DefaultFacebookClient.publish(DefaultFacebookClient.java:290)
at com.restfb.DefaultFacebookClient.publish(DefaultFacebookClient.java:298)
at javafbtest.JavaFbTest.main(JavaFbTest.java:40)
答案 0 :(得分:0)
为什么选择REST api?你不应该使用它,你尝试的网址也不是来自REST API,而是来自图api。
如果你指的是你正在使用的java SDK,那么也许你应该使用别的东西,我不确定因为我从未使用它,我自己编写。
要发表评论,您需要拥有评论ID。一旦你有了这个,就像在Comment object的文档(在赞连接下)中所说的那样,使用图形api很容易理解它:
创建强>
您可以通过发出HTTP POST请求来表达评论 COMMENT_ID /喜欢使用publish_stream权限。没有参数 必要的。