还有许多与此相关的问题,但它们并没有帮我解决问题。
我正在使用Facebook服务器端登录网站,我想在本地测试。启动登录操作的路径是[http:// localhost:8080 / fblogin](这会重定向到Facebook登录对话框,然后从那里开始)。
我可以成功获取代码,但是当我尝试将其替换为访问令牌时,我收到以下错误:
{"error":{"message":"Missing redirect_uri parameter.","type":"OAuthException","code":191}}
我提供redirect_uri,url编码,它与我用来获取第一个代码的那个相同。这是我用来请求访问令牌的URL(当然,全部大写查询字符串参数替换为它们的实际值):
我怀疑这可能与我在Facebook上设置应用的方式有关。以下是我设定的值:
Display Name: (an actual display name here)
App Domains: localhost
Contact email: (an actual email here)
Site URL: [http://localhost:8080/fblogin]
我需要在设置中调整一下才能使其正常工作?或者这看起来是否正确?
顺便说一下,如果它有任何区别,我正在使用Play!框架,版本2.0.1
答案 0 :(得分:0)
在挖掘了一点之后,我发现在从服务器发送请求以获取访问令牌时,我必须使用POST。
答案 1 :(得分:0)
有趣的是,使用POST对你有效,因为这对我来说没有。
在任何情况下,您是否使用setQueryParameter()添加查询参数? (见How to make multiple http requests in play 2?)