【发布时间】:2017-02-11 06:21:53
【问题描述】:
在Django中如何完成账号绑定的认证流程?
我将登录模板发送给用户。当用户点击它时,她会使用参数 account_linking_token 和 redirect_uri 重定向到https://example.ngork.io/authenticate。
现在,当我执行重定向时出现此错误:
找不到页面 (404)
请求网址:http://example.ngrok.io/[redirect_uri]
- ^admin/
- ^$ [name='index']
- ^messengerhook [name='messengerhook']
- ^authenticate [name='authenticate']
当前的 URL 没有进行任何这些。
编辑:
服务器的 url 是由 ngork 生成的,因为我在本地运行它。
https://a0505537.ngrok.io
重定向 uri 是 facebook 提供的用于链接帐户流程的 uri:
https://www.facebook.com/messenger_platform/account_linking
?account_linking_token=ACCOUNT_LINKING_TOKEN
&authorization_code=AUTHORIZATION_CODE
关于视图,问题中有写在我的 urls.py 设置文件中的 url。
基本上,身份验证视图是一个登录按钮,当用户登录时,我运行window.location.replace(["redirect_uri"])
已解决:
网址没有被解码,所以我补充一下:
var url = decodeURIComponent(params["redirect_uri"]);
【问题讨论】:
-
把你的 url 和视图放在有问题的地方。
-
服务器的url是ngork生成的,因为我是在本地运行的。重定向 uri 是 facebook 提供的用于链接帐户流的 uri:facebook.com/messenger_platform/account_linking ?account_linking_token=ACCOUNT_LINKING_TOKEN &authorization_code=AUTHORIZATION_CODE
-
看看
/[redirect_uri],你的重定向网址没有生成。这就是代码必不可少的原因。 -
什么没有生成?
标签: python django facebook bots facebook-messenger