# 其实就是Django RESTful Framework
# RESTful一种API的命名风格,主要因为前后端分离开发出现
# 前后端分离: 用户访问静态文件的服务器,数据全部由ajax请求给到
# RESTful风格:数据应该是名词,而动词由HTTP的请求方式来体现
# RESTful风格的API给前端返回 结果对象,无论什么请求方式
'''
特点: 反复重复
因为不论什么请求方式,都需要给前端返回对象内容,就是json格式的
所以每次如果有查询的结果对象都需要遍历成字典,和flask相同
如果不是get请求是带有内容的请求,那从前端接收的是json格式
每次都需要从request.body中拿出内容,是bytes格式
然后decode解码成json字符串然后再loads成可以给python处理的字典
'''
'''
说明:
return JsonResponse(book_list, safe=False)
# 对safe的说明,我们传过去的book_list是一个list格式
# 在前端json支持{}格式也支持[]格式
# 但是django中认为[]的json格式是不安全的会进行校验
# 所以把safe选项关闭False,不进行校验就可以传[]
'''
'''
序列化:对查询结果进行遍历,然后转成字典,给到JsonResponse
反序列化:接收前端json处理成字典,然后校验
'''
# RESTful一种API的命名风格,主要因为前后端分离开发出现
# 前后端分离: 用户访问静态文件的服务器,数据全部由ajax请求给到
# RESTful风格:数据应该是名词,而动词由HTTP的请求方式来体现
# RESTful风格的API给前端返回 结果对象,无论什么请求方式
'''
特点: 反复重复
因为不论什么请求方式,都需要给前端返回对象内容,就是json格式的
所以每次如果有查询的结果对象都需要遍历成字典,和flask相同
如果不是get请求是带有内容的请求,那从前端接收的是json格式
每次都需要从request.body中拿出内容,是bytes格式
然后decode解码成json字符串然后再loads成可以给python处理的字典
'''
'''
说明:
return JsonResponse(book_list, safe=False)
# 对safe的说明,我们传过去的book_list是一个list格式
# 在前端json支持{}格式也支持[]格式
# 但是django中认为[]的json格式是不安全的会进行校验
# 所以把safe选项关闭False,不进行校验就可以传[]
'''
'''
序列化:对查询结果进行遍历,然后转成字典,给到JsonResponse
反序列化:接收前端json处理成字典,然后校验
'''