Django Rest-Framework Login View - PullRequest
       34

Django Rest-Framework Login View

0 голосов
/ 02 марта 2019

Он должен отображать страницу входа в Django REST Framework, когда я нажимаю кнопку входа в API, доступную для просмотра, но это не так.я получил этот HTTP-ответ: «GET / api-auth / login /? next = / api-auth / login / HTTP / 1.1» 200 5415

Base URLs.py:

urlpatterns = [

path('', include('RunKeeper.urls')),
path('api-auth/', include('rest_framework.urls')),]

rest-framework URLs.py:

from __future__ import unicode_literals

from django.conf.urls import url
from django.contrib.auth import views

template_name = {'template_name': 'rest_framework/login.html'}

app_name = 'rest_framework'
urlpatterns = [
    url(r'^login/$', views.LoginView.as_view(), template_name, name='login'),
    url(r'^logout/$', views.LogoutView.as_view(), template_name, name='logout'),

Я включил rest-framework в установленные приложения.

Как мне решить проблему

1 Ответ

0 голосов
/ 02 марта 2019

Добавьте классы BasicAuthentication и SessionAuthentication в класс DEFAULT_AUTHENTICATION_CLASSES, как показано ниже.

 REST_FRAMEWORK = {
        'DEFAULT_AUTHENTICATION_CLASSES': (
            'rest_framework.authentication.BasicAuthentication',
            'rest_framework.authentication.SessionAuthentication',
        )
    }

И шаблоны URL, как показано ниже

urlpatterns = [
    url(r'^login/$', views.LoginView.as_view(template_name='rest_framework/login.html'), name='login'),
    url(r'^logout/$', views.LogoutView.as_view(), name='logout'),
]

Почему у вас есть шаблон входа в logoutView?Удалите и это.

...