1.什么是RESTful
RESTful(representational state transfer)是一种接口规范,是一种API设计风格。使用了这种设计风格的架构,即叫做RESTful架构。
2.API请求设计
RESTful将API规定为:动词 + 宾语
- 动词一般有五种:
- get 查
- put 修改
- patch 修改部分信息
- post 新增
- delete 删除
- 宾语:一般所有名词都使用名词复数
- 过滤信息:当返回结果过多时,应提供必要的过滤条件。比如:limit:10,offset:10
3.Http响应状态码
Http必须对每一个请求给出回应,包含状态码和数据
状态码包含五大类:
1XX 相关信息
2XX 操作成功
3XX 重定向
4XX 客户端错误
5XX 服务器错误
- 客户端请求时,要明确告诉服务器,接受 JSON 格式,请求的 HTTP 头的 ACCEPT 属性要设成 application/json
- 服务端返回的数据,不应该是纯文本,而应该是一个 JSON 对象。服务器回应的 HTTP 头的 Content-Type 属性要设为 application/json
- 错误处理 如果状态码是4xx,就应该向用户返回出错信息。一般来说,返回的信息中将 error 作为键名,出错信息作为键值即可。 {error: “Invalid API key”}
- 认证 RESTful API 应该是无状态,每个请求应该带有一些认证凭证。推荐使用 JWT 认证,并且使用 SSL
- Hypermedia 即返回结果中提供链接,连向其他API方法,使得用户不查文档,也知道下一步应该做什么
