Authentication FB错误:应为1'';在明信片和有效负载之间的输入中

Authentication FB错误:应为1'';在明信片和有效负载之间的输入中,authentication,access-token,facebook-java-api,Authentication,Access Token,Facebook Java Api,我已经完成了我的应用程序,然后在3个FB帐户上试用,结果还可以, 但第四个存在永久性错误(无法获取访问令牌): com.restfb.exception.Facebook OAuthException:在明信片和有效负载之间的输入中收到类型为OAuthException:预期为1.”的Facebook错误响应 我尝试删除该应用程序并在此帐户上再次安装了几次,但没有任何更改 我使用Java和restFB客户端 这是我获取访问令牌的代码: if(request.getParameter(“code”

我已经完成了我的应用程序,然后在3个FB帐户上试用,结果还可以, 但第四个存在永久性错误(无法获取访问令牌):

com.restfb.exception.Facebook OAuthException:在明信片和有效负载之间的输入中收到类型为OAuthException:预期为1.”的Facebook错误响应

我尝试删除该应用程序并在此帐户上再次安装了几次,但没有任何更改

我使用Java和restFB客户端

这是我获取访问令牌的代码:

if(request.getParameter(“code”)!=null){
字符串代码=request.getParameter(“代码”);
字符串url=”https://graph.facebook.com/oauth/access_token?"
+“client_id=“+clientId+”和“+”client_secret=”
+clientSecret+”&“+”code=“+code+”&“+”重定向\u uri=”
+重定向URL+“&type=web\u服务器”;
字符串accessToken=readUrl(url).split(&)[0].replaceFirst(“access_token=”,”);
//....
}
我看到有人犯了同样的错误,他说解决办法是:

将“|”替换为“%257C”,这使我的访问令牌无效


我真的不明白他的意思。

可能值得记录对
/oauth/access\u令牌请求的响应以及您提取的用作访问令牌的值

对于不起作用的帐户,检查
/oauth/access\u-token
响应是否在
access\u-token
之前包含其他参数

expiry=86400&access_token=AAAxxxx

我也遇到了同样的问题,调试后我唯一的结论是,当抛出此消息时,可能是令牌过期或无效。使用新生成的令牌进行检查不应抛出此错误。

检查以确保在签署请求之前验证Facebook返回的“code”参数,而不是“访问令牌”。这是我犯的错误。

虽然很尴尬,但我会诚实地说,以防它对其他人有帮助:


当我收到此错误消息时,我意外地将一个Google
access\u令牌(例如
ya29.A0A…
)复制/粘贴到Facebook graph API路由中。:)

请检查您的访问令牌是否有效。我遇到了同样的问题。我的令牌在那里无效