Django 管理 url 返回无效请求! - 姜戈

发布于 2024-09-05 06:42:24 字数 624 浏览 6 评论 0原文

通过执行以下操作,我的管理网址位于前缀后面。

1#

(r'^admin/', include(admin.site.urls)),

放置在 urls_core.py

2#

(r'^api/', include('project.urls_core')),

放置在 urls.py


所有管理 URL 都可以正常工作,除了应用索引

如果我访问任何 URL,例如:

  • /api/admin/core/
  • /api/admin/registration/
  • /api/admin/users/
  • /api/admin/filters/

我会收到“无效请求”作为我的响应。 状态代码是 200(正常)。


我以前从未收到过此错误消息。

有人知道吗?谢谢你们!

my admin urls are sat behind a prefix by doing the following.

1#

(r'^admin/', include(admin.site.urls)),

is placed within urls_core.py

2#

(r'^api/', include('project.urls_core')),

is palced within urls.py


All admin URLs work fine except app indexes.

If I go to any URL such as:

  • /api/admin/core/
  • /api/admin/registration/
  • /api/admin/users/
  • /api/admin/filters/

I receive 'INVALID REQUEST' as my response. Status code is 200 (OK) though.


I have never received this error message before.

Does anyone have a clue? Thanks guys!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

晒暮凉 2024-09-12 06:42:24

我认为一些从 url 中剥离主要 api/ 的中间件应该可以帮助您:

import re

class URLPrefixMiddleware:
    def process_request(self, request):
        request.path = re.sub('^api/','',request.path)

那么您就不再需要额外的 URL 配置了。将其放在某个应用程序目录中的 middleware.py 中,并将其添加到已安装的中间件中!

I think some middleware, that strips the leading api/ from the url should help you:

import re

class URLPrefixMiddleware:
    def process_request(self, request):
        request.path = re.sub('^api/','',request.path)

You shouldn't need your additional URL configuration then anymore. Put it in middleware.py in some app dir and add it to installed middleware!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文