是否有可能使用自定義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