蓝旭第六次预习

本文介绍了JSON的基本数据类型,包括字符串、数字、布尔值和null,以及复杂的数据类型如数组和对象。详细讲述了HTTP、HTTPS、gRPC、WebService、FTP、SSH、WebSocket和MQTT等网络请求的原理和使用。同时,探讨了前后端API的规范,强调了HTTP方法的选择和HTTP状态码的正确应用。
摘要由CSDN通过智能技术生成

一、JSON数据类型介绍

JSON 中支持的数据类型可以分为简单数据类型和复杂数据类型两种,其中简单数据类型包括:string(字符串)、number(数字)、boolean(布尔值)和 null(空);复杂数据类型包括:Array(数组)和 Object(对象)

二、网络请求介绍

2.1、HTTP请求

HTTP是一种应用层协议,常用于Web应用中的数据传输。通过发送HTTP请求,可以使用GET、POST、PUT、DELETE等方法与服务器进行交互。

2.2、HTTPS请求

HTTPS是在HTTP基础上添加了SSL/TLS加密层的安全传输协议。通过HTTPS发送的请求可以提供更高的数据传输安全性。

2.3、gRPC请求

gRPC是一种高性能、开源的远程过程调用(RPC)框架。它使用Protocol Buffers作为接口定义语言,基于HTTP/2协议传输数据,支持多种编程语言。

2.4、WebService请求

Web服务是一种通过网络进行通信的软件系统,常用于不同平台和语言之间的集成。常见的Web服务协议包括SOAP和RESTful。SOAP使用XML格式进行数据交互,而RESTful使用HTTP协议,通常以JSON格式进行数据传输

2.5、FTP请求

FTP(File Transfer Protocol)是用于在网络上进行文件传输的协议。通过FTP请求,可以上传、下载和管理文件。

2.6、SSH请求

SSH(Secure Shell)是一种网络协议,用于在不安全的网络中安全地进行远程登录和文件传输。通过SSH请求,可以进行远程命令执行、文件传输和隧道代理等操作。

2.7、WebSocket请求

WebSocket是一种基于TCP协议的双向通信协议,允许客户端和服务器之间进行实时通信。通过WebSocket请求,可以实现实时推送和即时通信功能。

2.8、MQTT请求

MQTT(Message Queuing Telemetry Transport)是一种轻量级的消息传输协议,常用于物联网设备间的通信。通过MQTT请求,可以实现设备之间的发布/订阅模式通信

2.9、OkHttp

一个开源的HTTP客户端库,提供了简洁的API和强大的功能,用于发送和接收HTTP请求。它支持同步、异步、WebSocket等不同类型的请求,同时还提供了连接池、缓存、拦截器等功能。

三、前后端api规范

3.1 接口路径以 /api 或 /[version]/api 开头

/api/task 或 /v2/api/tasks

注意:一个产品无论后端有多少个服务组成也应该只有一个 API 入口

3.2 接口路径以 api/aa-bb/cc-dd 方式命名

/api/task-groups

3.3 接口路径使用资源名词

而非动词,动作应由 HTTP Method 体现,资源组可以进行逻辑嵌套

POST /api/tasks 或 /api/task-groups/1/tasks 表示在 id 为 1 的任务组下创建任务

3.4 接口路径中的资源使用复数而非单数

/api/tasks

3.5 接口设计面向开放接口,而非单纯前端业务

要求我们在给结构路径命名时候面向通用业务的开放接口,而非单纯前端业务,以获取筛选表单中的任务字段下拉选项为例

/api/tasks

虽然这个接口暂时只用在表单的下拉选择中,但是需要考虑的是在未来可能会被用在任意场景,因此应以更通用方式提供接口交由客户端自由组合

3.6 规范使用 HTTP 方法

方法    场景    例如
GET    获取数据    获取单个:GET /api/tasks/1、获取列表:GET /api/tasks
POST    创建数据    创建单个:POST /api/tasks
PATCH    差量修改数据    修改单个:PATCH /api/tasks/1
PUT    全量修改数据    修改单个:PUT /api/tasks/1
DELETE    删除数据    删除单个:DELETE /api/tasks/1
其它更多请求方法请查阅 MDN Web Docs

3.7 规范使用 HTTP 状态码

状态码    场景
200    创建成功,通常用在同步操作时
202    创建成功,通常用在异步操作时,表示请求已接受,但是还没有处理完成
400    参数错误,通常用在表单参数错误
401    授权错误,通常用在 Token 缺失或失效,注意 401 会触发前端跳转到登录页
403    操作被拒绝,通常发生在权限不足时,注意此时务必带上详细错误信息
404    没有找到对象,通常发生在使用错误的 id 查询详情
500    服务器错误

  • 23
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值