drf项目 day01 入门

一、web应用模式

# 前后端混合开发(前后端不分离):返回的是html的内容,需要写模板,就像是我们写bbs项目时创建的.html文件,在里面写Python代码

#前后端分离:后端工程师只专注于写后端接口,返回json,xml格式数据

前端框架有vue使用的比较多,可以打包出app

  • 回忆
#回忆视图层的JsonResponse具体使用方法
JsonResponse(python数据)
from django.http import JsonResponse
def func1(request):
    return JsonResponse({'a':'aaa','b','bbb'})  # 将Python字典数据处理成Json数据传给前端

def func2(request):
    user_dict = {'a':'大爷','b','bbb'}
	# 查源码可知,可以书写json序列化的参数,也可以让python数据不局限于字典
    return JsonResponse(user_dict, json_dumps_params={ensure_ascii:False},safe=False)


#我们可以直接用django提供的内置序列化组件就可以将queryset对象封装为字典。

# 导入内置序列化模块
from django.core import serializers
# 调用该模块下的方法,第一个参数是你想以什么样的方式序列化你的数据
res = serializers.serialize('json', book_queryset)
return HttpResponse(res)

#回忆一下前端JS的BOM和DOM

二、API接口——前后端交互的媒介

因为前后端分离后,后端只需要写接口(前端向某个地址——一个url链接 发请求拿数据)

为了让大家写接口的时候用途一目了然,json里面的数据字段要规范

xml数据都是标签包着的不是很好看,现在都是json为主流,方便美观

#举例
url地址: http://127.0.0.1/books 
请求方式: get,post,delete,put ...

# xml格式 标签包着的
<xml>
<name>daliu</name>
</xml>
# json 类似字典
{"name":"daliu"}


一句话总结:http://api接口/路径 +?携带的数据(可以不携带)
    组合起来就是功能的实现
 
#以后我们作为后端就是写接口,前端就能得到这些数据  下面这个链接里面的乱码是使用了url中文转码技术   
https://api.map.baidu.com/place/v2/search?ak=6E823f587c95f0148c19993539b99295&region=%E5%A4%A9%E6%B4%A5&query=%E8%82%AF%E5%BE%B7%E5%9F%BA&output=json

三、接口测试工具postman

postman是目前最好用的,模拟发送http请求的工具

因为浏览器只能发get请求,不能直接发post请求(以前都是ajax包着js发)

这个工具只是用来发送Http请求

#直接官网下载,安装后自动打开

#解析json的网站
http://www.json.cn/

#今日单词

pretty 漂亮的(美化)
raw 原生(未加工的)/ row 一行
preview 预览
posted @ 2023-01-30 19:42  yiwufish  阅读(122)  评论(0)    收藏  举报