You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django+React认证系统注册接口404错误排查求助

解决Django+React注册接口404 Not Found问题

核心排查方向:URL路由配置错误

这是404错误最常见的原因,你的代码里存在URL前缀重复的问题:

问题分析

  • 你在app的urls.py中给路由加了api/前缀:path("api/register/", ...)
  • 前端API工具类的baseURL已经设置为http://127.0.0.1:8000/api/,请求时又拼接了register/,最终请求路径是/api/register/
  • 如果项目根urls.py中已经通过include将app的URL挂载到某个前缀下,会直接导致路径不匹配。

解决方案(二选一)

方案1:修改app的urls.py,移除重复的api/前缀

from django.urls import path
from rest_framework_simplejwt.views import TokenObtainPairView, TokenRefreshView
from .views import RegisterView, LoginView, RefreshTokenView

urlpatterns = [
    path("register/", RegisterView.as_view(), name="register"),
    path("login/", LoginView.as_view(), name="login"),
    path("token/refresh/", RefreshTokenView.as_view(), name="token_refresh"),
]

然后在项目根urls.py中添加app的路由挂载:

from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls),
    path('api/', include('your_app_name.urls')),  # 替换为你的app实际名称
]

方案2:保持app的urls.py不变,修改根urls.py直接挂载

如果不想修改app的路由,确保根urls.py直接include app的URL,不额外加前缀:

from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('your_app_name.urls')),  # 无额外前缀
]

其他需要修正的问题

1. View类权限属性拼写错误

你的RegisterView中写的是permissions_classes,正确的属性名是**permission_classes**(单数形式),否则会导致权限验证失败:

class RegisterView(APIView):
    permission_classes = [AllowAny]  # 修正为单数

    def post(self, request):
        # ... 原有代码逻辑

2. 确认app已添加到INSTALLED_APPS

在项目settings.py中确保你的app已经注册:

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'rest_framework',
    'rest_framework_simplejwt',
    'your_app_name',  # 添加你的app实际名称
]

验证步骤

  1. 重启Django服务器
  2. 直接在浏览器访问http://127.0.0.1:8000/api/register/,如果返回405 Method Not Allowed(因为是POST接口),说明路由配置正确;如果还是404,继续检查根URL和app注册情况。

内容的提问来源于stack exchange,提问作者Baker

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 01:23:10