【发布时间】:2018-08-02 20:16:01
【问题描述】:
我正在使用 Python 烧瓶。我有一个POST 请求,其中包含一些有效负载说:
abc.com/hello/hello1
我想将此 (302) 重定向到:
xyz.com/hello/hello1
仅更改域名,同时保持其余部分和有效负载不变。有没有简单的方法来做到这一点?
【问题讨论】:
标签: python redirect flask http-redirect
我正在使用 Python 烧瓶。我有一个POST 请求,其中包含一些有效负载说:
abc.com/hello/hello1
我想将此 (302) 重定向到:
xyz.com/hello/hello1
仅更改域名,同时保持其余部分和有效负载不变。有没有简单的方法来做到这一点?
【问题讨论】:
标签: python redirect flask http-redirect
根据 RFC,重定向请求(全部为 3xx)不能包含请求数据或标头。您将错过在原始请求中通过 POST 提供的有效负载。
我可以立即想到两种可能的解决方法:
【讨论】:
编辑:根据 Andrejs Cainikovs 在下面的评论,这不适用于带有有效负载的 POST。
在您的端点中,获取使用 request.url 的 url(see request API here 以获得更多选项)。然后你可以重写它并进行重定向。
newUrl = "xyz.com/" + route
return redirect(newUrl, code=302)
【讨论】:
request.url_rule或request.path或request.full_path获取路线吗?