我正在使用 Django 1.10,我现在的目标是使 url 可用和不带斜杠。为此,我向 URLConf 文件中的所有 URL 添加了斜杠,然后将APPEND_SLASH变量值设置为True(嗯,这是默认值)。
现在的问题是外部 POST 请求(我无法控制)产生以下错误:
您通过 POST 调用了此 URL,但该 URL 不以斜杠结尾,并且您设置了 APPEND_SLASH。Django 无法在维护 POST 数据的同时重定向到斜杠 URL。将您的表单更改为指向 127.0.0.1:8000/Calendar/AddAccounts/(注意尾部斜杠),或在您的 Django 设置中设置 APPEND_SLASH=False。
他们在Django doc 中提到了这一点,但在网上冲浪几个小时后,我不知道如何解决这个问题。
我也遇到过这个问题,但提议的解决方案对我来说似乎不可接受。它说我必须让用户只用斜杠来调用我的 URL。虽然我知道在其他语言(例如 C#)中可以同时启用这两个选项
你想支持这两种情况,这对我来说似乎很奇怪。理想情况下,在请求到达 Django 之前,您希望在服务器级别(nginx/apache/无论您使用什么)从非斜杠重定向到斜杠(或者如果您想要的话,也可以反过来)。
只需选择一个策略并坚持下去,因此将尾部斜杠添加到您的表单中,永远不要回头。:)
保持一致很重要。https://www.branded3.com/blog/urls-trailing-slash-seo/
| 归档时间: |
|
| 查看次数: |
4868 次 |
| 最近记录: |