我正在使用閉包庫來執行簡單的POST。我認爲XhrIo應該可以工作,因爲當我使用任何其他休息客戶端(例如Firefox瀏覽器應用程序RESTClient或Chrome的簡單休息客戶端)時,我的計算機可以向服務器發送POST請求,而內容類型是application/json。更改內容類型時,HTTP方法從POST更改爲選項
但是從我的申請我無法發表帖子。 我使用下面的代碼
xhr = new goog.net.XhrIo;
xhr.send('http://myhost:8181/customer/add','POST', goog.json.serialize(data));
如果我離開的頭默認情況下,我得到這個
Encoding: UTF-8 Http-Method: POST Content-Type: application/x-www-form-urlencoded;charset=UTF-8
如果我試圖通過傳遞{'content-type':'application/json'}
作爲第四個參數更改標題,標題更改爲
Http-Method:選項
內容類型:
不應該能夠使用Closure庫正確地更改標題,就像RESTClient使用JQuery對XMLHttpRequest所做的一樣?
還有別的方法可以標題進行修改,以使它看起來像這樣
Encoding: UTF-8 Http-Method: POST Content-Type: application/json;charset=UTF-8
感謝所有幫助 埃迪
感謝Achal,這是有用的信息。只是想知道RESTClient(http://code.google.com/p/restclient/source/browse/extension/chrome/content/restclient.js)如何設法做到這一點?是否因爲他們傳遞了這個passwordObject:null? – Eddie 2012-07-07 21:17:31
老實說,我不太清楚。你有什麼問題? 「OPTIONS」請求被拒絕了嗎?如果是這樣,你收到什麼HTTP代碼? – 2012-07-08 22:38:07
@AchalDave當POST自動轉換爲OPTIONS時,內容長度即將到達0 – 1Mayur 2012-10-08 12:35:02