drf入门规范
1、Web开发模式
1.1、前后端混合开发模式:
1.2、前后端分离开发模式
2、API接口
# api接口:通过网络,规定了前后端信息交互规则的url链接,也就是前后端信息交互的媒介
-https://www.baidu.com/books/--->json 格式数据--->接口 # 拿到的是json格式的数据
-https://www.cnblogs.com/liuqingzheng/articles/17400599.html--->返回界面 # 以.html结尾所以一定是一个url
# url和api接口的区别:web、API接口和一般的url链接还是有区别的,web、API接口简单的概括有下面四大特点:
1、url:长得像返回数据的url链接:
https://api.map.baidu.com/place/v2/search
2、请求方式:get、post、put、patch、delete
3、请求参数:json或者xml格式的key:values类型的数据
ak:6E823f587c95f0148c19993539b99295
region:上海
query:肯德基
output:json
4、响应结果:json、xml格式的数据
https://api.map.baidu.com/place/v2/search?ak=6E823f587c95f0148c19993539b99295®ion=%E4%B8%8A%E6%B5%B7&query=%E8%82%AF%E5%BE%B7%E5%9F%BA&output=json
4.1、返回数据:
# "status":0,"message":"ok","result_type":"poi_type",
5、典型的api接口
有URL地址、有请求方式、携带参数、返回数据格式是json或xml
3、接口测试工具postman
总结
1、前端中不同的编码格式:
urlencoded 在Django中:
request.body体中:b'username=jason&password=1234'
request.POST中可以取出来值7
form-data 在Django中:
request.body体中:数据部分和文件部分的拼接
b'----------------------------160806048070386359108417\r\nContent-Disposition: form-data; name="username"\r\n\r\njason\r\n----------------------------160806048070386359108417\r\nContent-Disposition: form-data; name="password"\r\n\r\n1234\r\n----------------------------160806048070386359108417--\r\n'
request.POST中可以取出来数据部分,文件部分要从request.FILES中取
json格式数据 在Django中:
request.body体中:b'{"username":"jason","password":"1234"}' 二进制形式
request.POST中取不出来值
2、不用pycharm创建Django项目:
"django-admin startproject 项目名"
3、Django中的文件对象和原来的文件对象
-django:from django.core.files.uploadedfile import InMemoryUploadedFile
-原生文件:_io.BufferedWriter
-django中文件类没有继承原生文件类,但是有原生文件类所有方法