Django API-2

学习来源

网易云课堂:python全栈工程师微专业:Django章节的API内容

课程目标

  • 了解REST的含义
  • 用户登录和退出
  • 用户注册

1.REST

1.1 概念介绍

在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

2.用户权限的API

2.1使用第三方应用django-rest-auth

2.1.1 django-rest-auth简介
  • RESTful的API
  • 基于django-rest-framework
  • 功能:用户注册、登录、退出、密码修改和重置、第三方登录
2.1.2 安装与配置
pip install django-rest-auth

进入blog/settings.py文件配置INSTALLED_APPS
在这里插入图片描述
进入blog/settings.py文件配置csrf_token
在这里插入图片描述
进入siteusers/urls.py文件配置登录、退出的路由在这里插入图片描述
迁移数据

python manage.py migrate

2.1.3使用postman测试用户登录的api

api接口:POST http://127.0.0.1:8000/api/v1/rest-auth/login/
使用post请求方式,对该api接口进行登录,需要在Body里提交username及password(本次提交以raw的JSON格式),登录成功会返回key(即csrf_token)
在这里插入图片描述

2.1.4使用postman测试用户退出的api

api接口:POST http://127.0.0.1:8000/api/v1/rest-auth/logout/
使用post请求方式,进行用户退出,需要在Body里提交相应的username(本次提交以form-data方式),退出成功会返回"Successfully logged out."
在这里插入图片描述

2.2用户注册

2.2.1安装与配置

pip install django-allauth

进入blog/settings.py文件配置INSTALLED_APPS
在这里插入图片描述
进入siteusers/urls.py文件配置用户注册的路由
在这里插入图片描述
迁移数据

python manage.py migrate

2.2.2使用postman测试用户注册的api

api接口:POST http://127.0.0.1:8000/api/v1/rest-auth/registration/
使用post请求方式,进行用户注册,需要在Body里提交相应username,password1,password2,email(本次提交以raw的JSON格式),注册成功会返回key(即csrf_token)
在这里插入图片描述

2.2.3权限问题解决

在用户注册后,重新使用获得用户列表的api进行获取时,出现了权限被拒的问题,原因是由于之前设置了csrf_token
在这里插入图片描述
未解决该权限问题,因此需要使用用户登录的api获得其返回的key(即csrf_token),并配置在整个测试项目(在该测试项目右键点击Edit后弹出的窗口)的Authorization
需要注意的是,每次项目重新运行后,csrf_token都会变化,因此需要重新进行登录操作获得新的key后进行更新
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值