这些核心知识点,前后端沟通必须掌握!

广告:宝塔服务器面板,一键全能部署及管理,送你10850元礼包,点我领取~~~

这些核心知识点,前后端沟通必须掌握!

什么是restful?

restful是当下最流行的接口设计规范,前端和后端都必须知道的一种规范 该规范定义了接口开发中,各个流程之中

协议

客户端在通过 API 与后端服务通信的过程中,应该 使用 HTTPS 协议

域名

API 应该部署在专用域名之下,应尽可能保持足够简单。如果确定 API 很简单,不会有进一步扩展,可以考虑放在主域名下,这里有两个常见的 URL 根例子:

api.example.com/* 单独一个子域名用来访问接口example.com/api/* 主域名之下单独一个空间

版本(Versioning)

所有的 API 必须保持向后兼容,你 必须 在引入新版本 API 的同时确保旧版本 API 仍然可用。所以 应该 为其提供版本支持

地址(path) 路由(router)

API 的具体网址

URL 的命名 必须 全部小写URL 中资源(resource)的命名 必须 是名词,并且 必须 是复数形式必须 优先使用 Restful 类型的 URLURL 必须 是易读的URL 一定不可 暴露服务器架构

至于 URL 是否必须使用连字符(-) 或下划线(_),不做硬性规定,但 必须 根据团队情况统一一种风格

https://api.example.com/zooshttps://api.example.com/animalshttps://api.example.com/zoos/{zoo}/animalshttps://api.example.com/animal_typeshttps://api.example.com/employees

动词(请求方法 method)

对于资源的具体操作类型,由 HTTP 动词表示。常用的 HTTP 动词有下面五个(括号里是对应的 SQL 命令)。

GET(SELECT):从服务器取出资源(一项或多项)。POST(CREATE):在服务器新建一个资源。PUT(UPDATE):在服务器更新资源(客户端提供改变后的完整资源)全更新。PATCH(UPDATE):在服务器更新资源(客户端提供改变的属性)部分更新。DELETE(DELETE):从服务器删除资源。

url参数

所有 URL 参数 必须 是全小写,必须 使用下划线类型的参数形式 分页参数 必须 固定为 page、page_size

响应(Response)

必须 选择合适的 HTTP 状态码。 必须 返回 JSON 格式数据。 所有错误必须统一错误格式。

常见的状态码

1xx 代表请求已被接受,需要继续处理 api中一般不出现2xx 请求已成功,请求所希望的响应头或数据体将随此响应返回200 服务器成功返回用户请求的数据201 用户新建或修改数据成功202 表示一个请求已经进入后台排队(成功了没有返回值,是一个异步)204 删除成功3xx 重定向4xx 客户端原因引起的错误404 请求的接口不存在,错误类型(请求地址错了)401 用户未登录403 用户登录了,但是没有权限访问422 客户端参数错误,验证错误429 超出请求限制5xx 服务端原因引起的错误500 服务器遇到了一个未曾预料的状况,导致了它无法完成对请求的处理,服务端代码报错503 服务器维护之中504 超时调用

错误格式

'message' => ':message',          // 错误的具体描述'errors' => ':errors',            // 参数的具体错误描述,422 等状态提供'code' => ':code',                // 业务自定义的异常码'status_code' => ':status_code',  // http状态码'debug' => ':debug',              // debug 信息,非生产环境提供
登录后复制

什么是报文?

HTTP报文时是HTTP进行请求和响应时用来交换信息的。报文是由客户端流入服务器的

报文分为两类:请求报文,响应报文

请求和响应报文的基本报文结构相同,都是由三部分组成:

起始行:对报文进行描述首部:一些属性主体:数据【可选】

axios

兼容浏览器和node服务器 从浏览器中创建 XMLHttpRequests 从 node.js 创建 http 请求

支持 Promise API 支持拦截请求和响应 转换请求数据和响应数据 取消请求 自动转换 JSON 数据 客户端支持防御 XSRF

加油,陌生人! (来来往往不陌生,希望对您有所帮助)

以上就是这些核心知识点,前后端沟通必须掌握!的详细内容,更多请关注9543建站博客其它相关文章!

9543建站博客
一个专注于网站开发、微信开发的技术类纯净博客。
作者头像
admin创始人

肥猫,知名SEO博客站长,14年SEO经验。

上一篇:详解html中 position属性用法(四种)
下一篇:聊聊uniapp中定义原生方法的方法

发表评论

关闭广告
关闭广告