是否有可能使用自定义HTTP VERB,如MERGE,与jQuery.ajax()?我正在与OData API进行交互,在将更新发布到记录时需要使用MERGE动词。自定义HTTP动词与jQuery.ajax()
我遇到的问题是,当我在ajax()请求中使用“MERGE”时,它不会将数据发送到服务器。它只是发送一个没有数据的MERGE请求,所以OData服务拒绝它。
当我将请求更改为PUT时,OData服务会发回500错误。
我的选择基本上是要弄清楚如何获得“MERGE”调用与请求一起发送数据,执行DELETE后跟POST(删除并在每次更新时重新创建记录),或者找出如何修改OData服务以接受更新的PUT。
让我知道你是否有任何想法如何使jQuery.ajax()发送带有MERGE请求的数据。
感谢,
戴夫
似乎非常难找到这些信息。我会说试试。如果它适用于主流浏览器,那很好;否则,您必须找到解决方法。有可能浏览器未知的动词被阻止。 – 2010-07-20 19:12:18
相关:http://stackoverflow.com/questions/165779/are-the-put-delete-head-etc-methods-available-in-most-web-browsers – 2010-07-20 19:13:06
我在Chrome中尝试过,并发送一个适当的MERGE动词,但它不包含请求有效载荷,这是一个重要部分。我将在下面的Alex的帖子中尝试一下隧道方法。谢谢你的帮助! – 2010-07-21 03:43:32