1. 程式人生 > >ajax 網路錯誤 所需資源沒有可用資料。由於出現錯誤 00002efe 而導致此項操作無法完成。

ajax 網路錯誤 所需資源沒有可用資料。由於出現錯誤 00002efe 而導致此項操作無法完成。

今天我在編寫一個js  ajax程式時在ie瀏覽器出現了這種錯誤。

我開啟f12開發者工具,發現程式的結果為100/continue。

在網上查詢該錯誤的相關資訊,發現是這樣描述的。

http之100-continue

  1、http 100-continue用於客戶端在傳送POST資料給伺服器前,徵詢伺服器情況,看伺服器是否處理POST的資料,如果不處理,客戶端則不上傳POST資料,如果處理,則POST上傳資料。在現實應用中,通過在POST大資料時,才會使用100-continue協議。

  2、客戶端策略。

    1)如果客戶端有POST資料要上傳,可以考慮使用100-continue協議。加入頭{"Expect":"100-continue"}

    2)如果沒有POST資料,不能使用100-continue協議,因為這會讓服務端造成誤解。

    3)並不是所有的Server都會正確實現100-continue協議,如果Client傳送Expect:100-continue訊息後,在timeout時間內無響應,Client需要立馬上傳POST資料。

    4)有些Server會錯誤實現100-continue協議,在不需要此協議時返回100,此時客戶端應該忽略。

  3、服務端策略。

    1)正確情況下,收到請求後,返回100或錯誤碼。

    2)如果在傳送100-continue前收到了POST資料(客戶端提前傳送POST資料),則不傳送100響應碼(略去)。

我並沒有完全理解這段話,不過我發現了關鍵的一點,該錯誤是post引起的,我的程式並不是一定要用post,於是我改用get,發現錯誤消失了。