android – 来自服务器的API调用需要appsecret_proof参数
作者:互联网
我无法使用Android Facebook SDK发出API请求,甚至无法从登录回调中获取用户 – 它始终返回null.
特别是,使用newMeRequest,我收到以下错误消息:
{ "error": {
"message": "API calls from the server require an appsecret_proof argument",
"type": "GraphMethodException",
"code": 100 } }
实际上,它似乎很明显,因为在Facebook应用程序选项中将标志设置为true.但是,我知道移动sdks可以在没有秘密的情况下发出API请求.但是,如果我尝试使用Facebook Graph API调试器中currentSession的访问令牌,则响应将与上面相同.
我不知道这是否与新的Android Facebook SDK有关,但我的代码与示例中的代码基本相同.登录很顺利,我得到会话令牌,但我不能发出任何API请求…
loginButton.setUserInfoChangedCallback(new LoginButton.UserInfoChangedCallback() {
@Override
public void onUserInfoFetched(GraphUser user) {
graphUser = user;
}
});
Request.newMeRequest(currentSession, new Request.GraphUserCallback() {
@Override
public void onCompleted(GraphUser user, Response response) {
}
}
}).executeAsync();
解决方法:
我能够使其工作的唯一方法是在Facebook应用程序的高级设置中设置为没有应用程序密码证明API调用.
但是,这是一个修复,而不是解决,因为我无法在选项设置为是的情况下执行请求(在iOS facebook sdk中可能).
标签:android,facebook,facebook-graph-api,android-facebook 来源: https://codeday.me/bug/20191006/1861050.html