(2022.05.24 Tues)
REST全称Representational State Transfer,表现层状态转换。
RESTful API的特点
- 面向资源
- URI指向资源
- 无状态
- 统一接口
所谓资源,可以是文本、图像、音频、服务等。文本可以使txt格式、HTML格式、XML格式,图片可以是jpeg格式、png格式等。json是最常用的资源格式。
每个资源可以通过URI(Universal Resource Identifier)获取到,也因此URI就成了资源的地址/标识符,通过URI可以找到相应的资源。最常见的URI是URL, uniform resource locator,或者说可以通过URL找到对应的资源。
比如某个资源,一首歌,在网站上的路径是/jaychou/opus12/obviously.mp3
,用户可以轻易地从该路径判断歌曲所在的专辑和歌手,并调整URL找到专辑与歌手的其他作品。
所谓无状态,是指通过URI定位到资源,该资源与其他资源无关。
统一接口,指RESTful中对资源的操作,如访问和修改,和HTTP的方法相同,即GET/POST/PUT/PATCH/DELETE。通过URI可以了解资源的位置,而对资源的操作可通过HTTP方法得知。
RESTful API设计规范
- 不用大写字母,所有单词使用英文且小写
- 连字符用减号'-'而不用下划线'_'
- 正确使用斜线分隔符'/'表示层级关系,URL的层级不要过深,并且越靠前的层级应该相对越稳定
- 结尾不包含斜线分隔符'/'
- URI/URL中不出现动词,用请求方式表示动作
- 资源表示用复数不要用单数
- 不使用文件扩展名
Reference
1 知乎-一文读懂什么是RESTful API-bigsai