烧瓶:哈希"#"在路由中

时间:2018-02-10 09:02:04

标签: python url flask routing url-routing

我最近使用谷歌API并使用简单的烧瓶方法来检索一些id_token。

这是我的代码,注释中有解释:

@app.route('/afterlogin/id_token')
def afterlogin(id):  # get the id
    print(id)  # print it 
    return render_template(r'creds_view.html', data=id) # and render the template with 'id' in it (for test purposes)

所以当用户登录后,api会将id_token重定向到http://localhost:8000/afterlogin/#id_token=some_id_token

但由于某种原因,它显示我404错误。 我认为这是因为#'#'在网址中,我想要id_token。我知道'#'在html中表示路径链接或路由在' href'。

所以我试过了。

@app.route('/afterlogin/<path:id>')

但错误仍然存​​在。

任何猜测?

1 个答案:

答案 0 :(得分:4)

浏览器在本地处理#之后的所有内容,都不会将其发送到服务器,因此您无法在路由中使用它。省略#

http://localhost:8000/afterlogin/some_id_token