我想使用我的用户凭据向我的Facebook页面发送消息,并使用ngrok创建一个localhost隧道,以便facebook可以访问我的机器。但是我仍然收到一个错误的请求(500),告诉我我没有注册任何域名或域名。
在developers.facebook.com上我的App域中有类似的内容:04cda25e.ngrok.io
我在我的网站Url https://04cda25e.ngrok.io/
这是我的代码:
//https://stackoverflow.com/questions/13376710/facebook-app-domain-name-when-using-localhost Ik krijg badrequest omdat ik geen appdomain opgegeven heb
public void postToFacebook(){
FacebookConnectionFactory connectionFactory =
new FacebookConnectionFactory("1783242201976620", "******");
OAuth2Operations oauthOperations = connectionFactory.getOAuthOperations();
OAuth2Parameters params = new OAuth2Parameters();
params.setRedirectUri("https://04cda25e.ngrok.io/1234");
//appid:1783242201976620 <<<<< not really an appid
//apptoken:Ycics4TEiCAs9JZXyHD4I489D6M <<<< this is like a mock apptoken. Totally not a real one that's for sure...
params.setScope("public_profile,email,user_birthday");
// upon receiving the callback from the provider: http://massapi.com/method/an/andExpect.html
AccessGrant accessGrant = oauthOperations.exchangeCredentialsForAccess("*****", "****",params);
Connection<Facebook> connection = connectionFactory.createConnection(accessGrant);
Facebook facebook = connection.getApi();
//facebook.pageOperations().
facebook.feedOperations().updateStatus("I'm trying out Spring Social!");
}
在我尝试获取访问权限时,它会抛出500错误。
有人可以帮忙吗?
编辑:下面是我在facebook设置中截取的截图:https://pasteboard.co/GXjfojs.png
任何人都知道我应该改变什么?
答案 0 :(得分:0)
好吧,我还没有找到问题的解决方案,但我找到了一种解决方法,可以在不使用Spring社交网站的情况下访问Facebook页面获取访问权限。它是这样的:
1)登录facebookdeveloper
2)去工具&amp;支撑
3)选择Graph API资源管理器,您可以手动请求访问令牌。
4)按下获取令牌按钮并选择您想要的类型
5)选择您希望应用对该页面拥有的权限,然后点击“获取访问令牌”
6)Facebook生成一个String,它是Access令牌。通过在AccessGrant构造函数中包含此字符串,使用此实例化java中的AccessGrant
对象。
7)使用此AccessGrant创建连接并瞧!
希望这有助于任何人..