使用jQuery.ajax()自定义HTTP谓词

Dav*_*ris 3 ajax jquery odata

是否可以使用自定义HTTP VERB(如MERGE)和jQuery.ajax()?我正在与OData API进行交互,该API在向记录发布更新时需要MERGE动词.

我遇到的问题是,当我在ajax()请求中使用"MERGE"时,它不会将数据发送到服务器.它只发送一个没有数据的MERGE请求,因此OData服务拒绝它.

当我将请求更改为PUT时,OData服务发回500错误.

我的选择基本上是弄清楚如何获得"MERGE"调用以发送数据和请求,执行DELETE后跟POST(删除并在每次更新时重新创建记录),或者弄清楚如何修改OData服务接受PUT进行更新.

如果您对如何使jQuery.ajax()发送带有MERGE请求的数据有任何想法,请告诉我.

谢谢,

戴夫

Jac*_*kin 6

这不是jQuery处理自定义HTTP谓词的能力问题,这取决于浏览器.

  • 雅各布是正确的,这不是jQuery阻止你在这里,而是浏览器的XmlHttpRequest实现.例如,IE也不支持"PUT". (3认同)