我正在尝试这里的答案中的方法。像这样的东西:
url = 'https://InternalURL'
token = 'api token here'
response = redirect(url)
response['Token'] = token
return response
Run Code Online (Sandbox Code Playgroud)
此代码位于单击模板中的链接时调用的视图中。执行一些操作来构建正确的 url 并在此代码之前获取 api 令牌。
如果我通过 Fiddler 检查请求,第一个具有 302 状态代码的重定向包含我设置的标头。但是随后尝试导航到我想要重定向到的实际 url 的请求,我需要的标头没有设置。
显然,这会导致请求失败,因为标头中不存在身份验证令牌。
我完全错过了一些明显的东西吗?有一个更好的方法吗?预先感谢您的任何帮助!
尝试下面的代码,它对我有用
base_url = '/dashboard/' # 1 /<redirect-route>
query_string = urlencode({'token': jwt.encode(payload, "SECRET PHRASE")}) # 2 token=jwt-token
url = '{}?{}'.format(base_url, query_string) # 3 /<redirect-route>/?token=jwt-token
return redirect(url)
Run Code Online (Sandbox Code Playgroud)
你可以在视图中检索,例如
token = request.GET.get('token')
Run Code Online (Sandbox Code Playgroud)
我不知道这是否是最好的方法,但它对我的情况有效。
| 归档时间: |
|
| 查看次数: |
3195 次 |
| 最近记录: |