RESTful API笔记
Xayah Lv3

作者:覃超
链接:https://www.zhihu.com/question/28557115/answer/48094438
来源:知乎

概念

RESTResource Representational State Transfer 资源网络中以某种表现形式进行状态转移

Resource 资源,即数据。例如 friendsprofile等;

Representational :某种表现形式,例如JSONXMLJPEG等;

State Transfer 状态变化。通过HTTP动词实现。

一言以蔽之:URL定位资源,用HTTP动词(GET,POST,DELETE,DETC)描述操作。

规则

  1. URL中只使用名词来指定资源,原则上不使用动词

  2. ServerClient之间传递某资源的一个表现形式,比如用JSONXML传输文本,或者用JPGWebP传输图片等。当然还可以压缩HTTP传输时的数据(On-wire data compression)

  3. HTTP Status Code传递Server状态信息。例如最常用的 200 表示成功500 表示Server内部错误等。

示例

1
2
# 获取某人的好友列表
/v1/friends
1
2
# 获取某人的详细信息
/v1/profile

HTTP协议里的动词来实现资源添加修改删除操作。即通过HTTP动词来实现资源状态变化

1
2
# 删除某人的好友
DELETE /v1/friends
1
2
# 添加好友
POST /v1/friends
1
2
# 更新个人资料
UPDATE /v1/profile

如下使用不符合规范:

1
GET /v1/deleteFriend
  • 本文标题:RESTful API笔记
  • 本文作者:Xayah
  • 创建时间:2021-09-27 10:17:49
  • 本文链接:http://acmezone.top/2021/09/27/RESTful-API笔记/
  • 版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!