首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Django Rest-框架登录视图

Django Rest-框架登录视图
EN

Stack Overflow用户
提问于 2019-03-02 06:33:24
回答 1查看 2.3K关注 0票数 0

当我在browsable api中按下登录按钮时,它应该会显示Django REST框架登录页面,但它没有。我得到了这个HTTP响应:"GET /api-auth/ login /?next=/api-auth/ login / HTTP/1.1“2005415

基础URLs.py:

代码语言:javascript
复制
urlpatterns = [

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

rest框架URLs.py:

代码语言:javascript
复制
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。

我怎样才能解决这个问题?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-02 12:41:13

在DEFAULT_AUTHENTICATION_CLASSES类中添加BasicAuthentication和SessionAuthentication类,如下所示。

代码语言:javascript
复制
 REST_FRAMEWORK = {
        'DEFAULT_AUTHENTICATION_CLASSES': (
            'rest_framework.authentication.BasicAuthentication',
            'rest_framework.authentication.SessionAuthentication',
        )
    }

和url模式,如下所示

代码语言:javascript
复制
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中有登录模板?把那个也去掉。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54953216

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档