Трипольский Пётр Asked:2020-12-13 03:52:43 +0800 CST2020-12-13 03:52:43 +0800 CST 2020-12-13 03:52:43 +0800 CST 与补丁有何不同? 772 我正在学习 REST API。我不明白PUT和PATCH方法的区别:它们都是用来更新数据的……网上的俄语文章提供了很多水,问题的本质有明确的答案吗? javascript 1 个回答 Voted Best Answer Трипольский Пётр 2020-12-13T03:52:43+08:002020-12-13T03:52:43+08:00 这个问题的答案可以在这里找到。PUT要求对对象的所有字段进行完全复制,以及修改后的字段:未复制的字段将被覆盖。此方法的行为类似于赋值。下面我对json-server程序进行了汇报。 在 PUT http://localhost/cars请求之前: {"id": 1, "name": "Mazda", "year": "01.01.2001"} PUT 请求http://localhost/cars/1的内容: {"year": "02.02.2010"} 在 PUT http://localhost/cars请求之后: {"id": 1, "year": "02.02.2010"} 另一方面, PATCH提供了发送多个字段的能力,将通过类比Object.assign()执行合并 在 PATCH http://localhost/cars请求之前: {"id": 1, "name": "Mazda", "year": "01.01.2001"} PATCH 请求http://localhost/cars/1的内容: {"year": "02.02.2010"} 请求 PATCH http://localhost/cars后: {"id": 1, "name": "Mazda","year": "02.02.2010"}
这个问题的答案可以在这里找到。PUT要求对对象的所有字段进行完全复制,以及修改后的字段:未复制的字段将被覆盖。此方法的行为类似于赋值。下面我对json-server程序进行了汇报。
在 PUT http://localhost/cars请求之前:
PUT 请求http://localhost/cars/1的内容:
在 PUT http://localhost/cars请求之后:
另一方面, PATCH提供了发送多个字段的能力,将通过类比Object.assign()执行合并
在 PATCH http://localhost/cars请求之前:
PATCH 请求http://localhost/cars/1的内容:
请求 PATCH http://localhost/cars后: