相信不少朋友在使用 SAP ABAP Gateway Client 测试 OData 服务时,都看到过这三个相似的 HTTP 请求类型:PUT, MERGE 和 PATCH.
这三种类型有什么区别呢?
- PUT:将 HTTP 请求(payload)作为输入,这个输入将被传入 OData 模型的 DPC Class 的 UPDATE_ENTITY 方法中。
例如我们通过 PUT 传入如下的数据:
{
“Vbkur” : “170” }
则只有 Vbkur 在 update_entity 方法中可见。 总之,如果将 OData 模型的 属性子集(attribute subset)
作为 PUT 方法的输入,则相同的属性子集将会被传入 UPDATE_ENTITY 方法进行处理。
- PATCH & MERGE: 如果在有效负载(HTTP 请求)中传递属性的子集,这两个方法会自动获取其他属性。 Patch 和