有些api可以使用json或者xml数据格式来表示同一数据,当这种情况发生的时候,客户端应该如何指定它想要的表述呢?
1.内容协商
2.为资源分配多个url,一个url对应一种表述
HTTP协议语义:
1.get
获取某个资源
安全,幂等的。
常见响应码:200(ok), 300(Moved Permanently),404(Not Found), 410(Gone)
2.delete
销毁一个资源
不安全,幂等
常见响应码:200(ok), 202(Accepted,"我将稍后删除这个资源"),204(No Content,"删除成功,我没有关于这个资源的信息描述了")
3.post
基于给定的表述信息,在当前资源的下一级创建新的资源
不安全,不幂等
常见响应码:201(Created),Location 用于报告告诉这个客户端这个新资源的url地址。202(Accepted,接收,但目前还没创建)
4.put
用给定的表述信息替换资源的当前状态
不安全,幂等
常见响应码:200(ok),204(No Content)
5.head
获取服务器发送过来的报头信息(不是资源的表述),这些报头信息是在服务器发送资源的表述的时候一起发送过来的
安全,幂等的。
与get相比,不节省时间,但节省带宽。
6.options
获取整个资源所能响应的http方法列表
7.patch
根据提供的表述信息修改资源的部分状态。如果有些资源状态在提供的表述中没有被提到,浙西状态就保持不变。patch类似于put,但是
允许对资源状态进行一些细粒度的改动
不安全,不幂等
常见响应码:200(ok),2
3.RESTful Web APIs中文版 --- 资源和表述
最新推荐文章于 2022-03-03 08:43:10 发布
本文深入探讨RESTful架构风格中的核心概念——资源和表述,解释如何通过URI来标识资源,以及使用HTTP动词操作资源的不同状态,同时讨论了JSON和XML在资源表述中的应用。
摘要由CSDN通过智能技术生成