我正在拼命地尝试在 Facebook页面(品牌页面,而不是用户墙)上自动发布帖子。我正在使用 spring social 作为框架。
这个想法如下:我有一个使用spring social的网络应用程序,我希望能够以编程方式在相关的facebook品牌页面上发布状态。品牌页面就是人们“喜欢”的这种页面,类似于https://www.facebook.com/cocacola
我尝试了以下方法: 1. 在页面上获取具有管理员权限的有效用户的访问令牌 2. 获取页面的访问权限(如何?),并在该页面上发布。也许通过页面操作?或者其他的东西...
我被困在第一步,我无法尝试第二步。对于第一步,我有:
FacebookConnectionFactory connectionFactory = new FacebookConnectionFactory("clientid", "secretkey");
OAuth2Operations op = connectionFactory.getOAuthOperations();
OAuth2Parameters params = new OAuth2Parameters();
- 我应该把什么作为参数?我想我必须定义一个范围,对吧?
- 哪个可以在该页面上发布?
然后,我应该为管理员用户获取访问令牌,如下所示:
AccessGrant ag = op.exchangeCredentialsForAccess("username", "password", params);
accessToken = ag.getAccessToken();
在这里,我应该以这样一种方式为用户提供访问令牌,即用户不需要通过 facebook 登录页面自己输入用户名/密码。但是,它不起作用。我有以下例外:
警告:org.springframework.web.client.RestTemplate - “ https://graph.facebook.com/oauth/access_token ”的POST 请求导致 400(错误请求);调用错误处理程序
2013 年 10 月 23 日晚上 9:57:59 org.apache.catalina.core.StandardWrapperValve 调用严重:servlet [appServlet] 在路径 [/myapp] 的上下文中的 Servlet.service() 引发异常 [请求处理失败;嵌套异常是 org.springframework.web.client.HttpClientErrorException: 400 Bad Request] 根本原因是 org.springframework.web.client.HttpClientErrorException: 400 Bad Request
如果您能发布一个功能齐全的概念证明,我将不胜感激(我在那里找到了答案元素,但我没有设法让它工作......)。
谢谢你的帮助!