Facebook手动OAuth登录流程报错:页面提示“抱歉,出了点问题”
解决Facebook OAuth手动流程跳转报错问题
参数格式问题:你的OAuth链接里多个参数带了不必要的大括号和引号,导致Facebook无法正确解析:
client_id:去掉包裹的大括号,直接写462632115264696redirect_uri:- 必须加协议前缀,比如
http://localhost:8080,不能只写localhost:8080 - 删掉多余的引号和大括号
- 一定要在Facebook开发者后台的Valid OAuth Redirect URIs里配置这个地址,否则会被拦截
- 必须加协议前缀,比如
state:不需要嵌套的引号和大括号,直接用随机字符串就行,比如state123abc;如果要传额外信息,记得先做URL编码
修复后的示例链接:
https://www.facebook.com/v14.0/dialog/oauth? client_id=462632115264696 &redirect_uri=http%3A%2F%2Flocalhost%3A8080 &state=state123abc注:
redirect_uri必须做URL编码,上面的http://localhost:8080编码后就是http%3A%2F%2Flocalhost%3A8080额外排查点:
- 确认你的Facebook应用不是开发模式(如果是开发模式,只有添加到测试用户列表的账号才能用)
- 核对
client_id是否正确,别把应用密钥当成应用ID填进去
内容的提问来源于stack exchange,提问作者Akabane
相关产品推荐
相关产品推荐

