drf(一)

Web应用模式

# 前后端混合开发 -bbs项目,页面渲染是在后台完成--->render(request,'index.html') -后端人员---》写前端css,js,html # 前后端分离开发---》主流---》前端发展出一些框架(vue,react) -js的dom操作---》html页面--》通过js在页面中插入内容 -bom和dom -不用模板语法渲染页面了----》在前端使用js渲染页面 -页面渲染在前端完成 -以后前端人员只负责写前端 -后端人员只负责写后端 -前端的展现形式---》不一定只是网页,可能是app,小程序

API接口

# api接口:前后端交互的媒介 # 接口有的东西 -url地址 -请求方式:get ,post -请求参数:name='西游记' get请求--->127.0.0.1/books?name='西游记' -响应结果 -http响应--》响应状态码--》响应头---》响应体(json)

接口测试工具postman

# 对接口进行测试---》在浏览器中只能发送get请求,发不了post,delete.. # 接口测试工具:mac,win,linux都可以 # 使用最多的软件:postman ---》后来慢慢收费了---》Postwoman # 下载地址:https://www.getpostman.com/downloads/ # 双击就装完了 # 前后端交互的编码格式有哪几种? -urlencoded:正常的post请求提交数据:name=lqz&age=19 -formdata:post请求上传文件:带文件二进制形式 -json:body体中的数据格式为:{"name":"lqz","age":19}--》用的多

restful规范(重要)

# 前后端交互使用api接口---》符合某种规范---》restful规范---》写前后端分离的标准 # REST全称是Representational State Transfer,中文意思是表述(编者注:通常译为表征性状态转移)。 它首次出现在2000年Roy Fielding的博士论文中。 RESTful是一种定义Web API接口的设计风格,尤其适用于前后端分离的应用模式中 # https://api.weibo.com/2/account/get_uid.json # 10条内容---》 -1 数据的安全保障--》通常使用https协议 -2 用api关键字标识接口---》在接口中带api字眼--》让别人一看就知道这是个api接口 -https://api.baidu.com/books -https://127.0.0.1:8080/api/books -3 多版本共存--->在接口地址中带版本号---》 -都留---》尽快升级---》xx年我们就不支持xx以下版本了 -有的人用了老版本app--》老接口v1 -有的人用了新版本app--》新接口v2 -https://api.baidu.com/v1/login -https://api.baidu.com/v2/login -4 数据即是资源,均使用名词(可复数)--》请求地址中尽量不出现动词 -https://api.baidu.com/v1/users # 获取用户,删除用户,新增用户 -5 资源操作由请求方式决定-->get,post,delete ,put,patch -get请求是获取数据 -post请求是新增数据 -delete请求是删除数据 -put请求是修改数据 -patch请求是局部修改数据 -6 请求地址中带过滤条件 -https://api.example.com/v1/zoos?limit=10 # 返回10条数据 -https://api.example.com/v1/books?name=西游记 # 查询名字是西游记的这本书 -7 响应状态码(http的响应状态码,响应体的json数据中带状态码) -http的响应状态码 -1xx:请求正在处理 -2xx:请求成功(200,201) 200201有什么区别? -3xx:重定向 (301302有什么区别) -4xx:客户端错误(404:地址不存在,403:禁止了) -5xx:服务端错误 -响应体中返回json格式数据---》code,status--->也有状态码---》服务端自定义的 -1001 :用户名错误 -1002 :没有权限。。 -8 错误处理,应返回错误信息 -返回数据是json格式--》带状态码---》错误信息 { error: "无权限操作" } -9 返回数据格式符合如下规范(大部分公司不按这个) -多条数据返回列表 GET /collection:返回资源对象的列表 [{name:lqz,age:19},{name:pyy,age:33}] -单条数据返回字典 GET /collection/resource:返回单个资源对象 {name:lqz,age:19} -新增,返回新增的对象---》{name:lqz,age:19} POST /collection:返回新生成的资源对象 -修改,返回修改后的对象--》{name:lqz,age:19} PUT /collection/resource:返回完整的资源对象 -修改,返回修改后的对象--》{name:lqz,age:19} PATCH /collection/resource:返回完整的资源对象 -删除,返回空文档 DELETE /collection/resource:返回一个空文档 -->{code:100,msg:删除成功} -10 返回资源中链接地址 { "id": 1404376560, "description": "人生五十年,乃如梦如幻;有生斯有死,壮士复何憾。", "url": "http://blog.sina.com.cn/zaku", "profile_image_url": "http://tp1.sinaimg.cn/1404376560/50/0/1", "domain": "zaku", }

__EOF__

本文作者祈安
本文链接https://www.cnblogs.com/jyc666/p/16095735.html
关于博主:没有收拾残局的能力,就别放纵善变的情绪
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   丶祈安  阅读(41)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
点击右上角即可分享
微信分享提示