iview-admin 2.1 + django 2.1 (一) 登录认证+修改请求头 简单例子
2018-11-14 17:47
781 查看
登录认证+修改请求头
前端
登录 config/index.js dev: 后端地址 api/user.js const data = { username: userName.valueOf(), password } 请求头设置 libs/axios.js interceptors (instance, url) { // 请求拦截 instance.interceptors.request.use(config => { // 添加全局的loading... 增加下面的 if (url !== 'login') { instance.defaults.headers.common['Authorization'] = 'Token ' + store.state.user.token }
后端
安装drf
pip install djangorestframework django-cors-headers
settings.py
'rest_framework', 'rest_framework.authtoken', 'corsheaders', 'django_filters' # REST_FRAMEWORK # http://drf.jiuyou.info/#/drf/requests MIDDLEWARE = [ 'corsheaders.middleware.CorsMiddleware', 'django.middleware.common.CommonMiddleware', ] REST_FRAMEWORK = { 'DEFAULT_AUTHENTICATION_CLASSES': ( 'rest_framework.authentication.BasicAuthentication', 'rest_framework.authentication.TokenAuthentication', 'rest_framework.authentication.SessionAuthentication', ), 'DEFAULT_RENDERER_CLASSES': ( 'rest_framework.renderers.JSONRenderer', 'rest_framework.renderers.BrowsableAPIRenderer' #注释掉 可以关闭 api web界面 ), 'DEFAULT_PERMISSION_CLASSES': ( # 'rest_framework.permissions.AllowAny', 'rest_framework.permissions.IsAuthenticated', ), 'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.LimitOffsetPagination', 'PAGE_SIZE': 10, 'DEFAULT_FILTER_BACKENDS': ('django_filters.rest_framework.DjangoFilterBackend',) } CORS_ALLOW_CREDENTIALS = True CORS_ORIGIN_ALLOW_ALL = True CORS_ORIGIN_WHITELIST = ( '*', ) class DisableCSRFCheck(object): def process_request(self, request): setattr(request, '_dont_enforce_csrf_checks', True) MIDDLEWARE_CLASSES = 'view.DisableCSRFCheck'
urls.py
from rest_framework.authtoken import views path('api-token-auth', views.obtain_auth_token), path('get_info',GetInfo.as_view()),
views.py
from rest_framework import permissions from rest_framework import generics from rest_framework.views import APIView from rest_framework.response import Response class GetInfo(APIView): def get(self, request): ad 5b4 min = { 'name': 'super_admin', 'user_id': '1', 'access': ['super_admin', 'admin'], 'token': 'super_admin', 'avator': 'https://file.iviewui.com/dist/a0e88e83800f138b94d2414621bd9704.png' } return Response(admin)
相关文章推荐
- django 1.11.5与python3.62实现简单的 注册,登录与修改密码
- Django登录、注册和修改密码简单页面实现
- iview-admin 1.3 + django 2.0 (一) 增删改查例子
- iview-admin 1.3 + django 2.0 (二) 用户登录
- Django1.6 用Form实现注册登录注销修改密码(含代码!)
- C#修改XML的简单例子
- JS框架avalon简单例子 行编辑 添加 修改 删除 验证
- C语言实现超简单登录认证
- spring mvc 简单登录例子
- C# 实现多态的的简单易学的例子-实现不同的用户登录到不同的界面(用抽象类,抽象方法实现的多态)加上泛型来实现
- SpringMVC 做服务器,httpClient做客户端请求的简单例子
- Django修改app在Admin后台显示的名称
- django简单实现项目和app的创建,并通过admin管理界面管理
- admin密码修改致使epo4.0无法正常登录
- php实现简单的用户注册,登录,修改个人信息接口
- 【转】jQuery+Ajax+PHP登录实例 一个简单的用Jquery中ajax方法登录的例子
- 浅谈django中的认证与登录
- 浅谈django中的认证与登录
- Django1.6 用Form实现注册登录注销修改密码