Facebook 登录重定向:不完整 url

Facebook login redirect: incomplete url

我正在尝试实施手动 Facebook 登录流程,如下所述:

https://developers.facebook.com/docs/facebook-login/manually-build-a-login-flow

用户登录授权应用这一步就OK了。当 Facebook 重定向到我的服务时(成功登录后),问题就开始了;我可以在浏览器的 URL 栏中看到如下内容:

http://some.local.domain:8080/1/share/fb_login_redirect?#access_token=XXYYZZ&expires_in=6285

但奇怪的是我的网络服务只有 "sees":

http://some.local.domain:8080/1/share/fb_login_redirect

我认为这是由“?”后面的“#”符号引起的。结果我无法通过查询字符串获得 access_token

我的网络服务是一个 Python WSGI 应用程序。我已经测试过使用 gunicornwsgiref.simple_server 来提供它。我已经调试了 WSGI 环境 dict,我发现部分 URL 正在被传递(不是带有查询参数的完整的)。因此,当浏览器将请求信息传递到 WSGI 环境时,这似乎是一个问题。顺便说一句,我已经在 Chrome 和 Firefox 上进行了测试;我正在使用 MacOS X 10.10.5 .

如有任何帮助,我将不胜感激。

谢谢。

URL 的散列部分是纯粹的客户端构造,它永远不会发送到服务器。

您需要在客户端捕获访问令牌 (JavaScript),或者在您的登录对话框调用中选择 response_type: code