【发布时间】:2019-05-08 19:24:14
【问题描述】:
-
问题
我的 django 应用程序经常回复
405 Method Now Allowed,即使 它是开发环境中的工作 api。但是如果我重新启动 开发服务器 (python manage.py runserver) 它可以工作。 -
环境
- macOS Mojave 10.14
- Python 3.6.4(通过 Pipenv 隔离环境)
- Django 2.1.4
- djangorestframework 3.8.2
-
API 代码
settings/urls.py(根 url 文件)
from django.urls import path, include import my_account.urls urlpatterns = [ path('account/', include(my_account.urls, namespace='account_v1')), ]我的帐户/urls.py
from django.urls import path from .apps import MyAccountConfig from .views import TokenView app_name = MyAccountConfig.name urlpatterns = [ path('token/', TokenView.as_view()), ]my_account/views.py
from rest_framework.views import APIView class TokenView(APIView): def post(self, request): # Some Business-Logic Code pass -
日志
405 发生时的日志
System check identified no issues (0 silenced). December 07, 2018 - 11:22:54 Django version 2.1.4, using settings 'my_server.settings.staging' Starting development server at http://0.0.0.0:8000/ Quit the server with CONTROL-C. .env Applied [07/Dec/2018 11:24:30] "OPTIONS /account/token/ HTTP/1.1" 200 0 [07/Dec/2018 11:24:30] "{"email":"email@hidden.com","password":"hidden_password"}POST /account/token/ HTTP/1.1" 405 66工作时记录
System check identified no issues (0 silenced). December 07, 2018 - 11:48:01 Django version 2.1.4, using settings 'my_server.settings.staging' Starting development server at http://0.0.0.0:8000/ Quit the server with CONTROL-C. .env Applied [07/Dec/2018 11:48:08] "OPTIONS /account/token/ HTTP/1.1" 200 0 [07/Dec/2018 11:48:09] "POST /account/token/ HTTP/1.1" 200 517在 chrome 网络标签中,200 和 405 的请求没有区别。
【问题讨论】:
标签: python django django-rest-framework http-status-code-405