跳到主要內容

發表文章

目前顯示的是 4月, 2019的文章

Chrome 放棄請求

有人遇到 Chrome 放棄 (abort) ajax 請求 (request) 的狀況,但原因不明。只知道 XMLHttpRequestEventTarget.onabort 被呼叫了。 有人查了 Chrome 的程式碼與也有人歸納自己的經驗,發現有以下幾種情形 Chrome 會放棄請求: 發出請求的 DOM 元素已經被刪叫 例如說 <img> 將要載入圖片,但在載入發生之前, <img> 就被刪掉了。 做了某件事造成不需要該請求 例如載入一個 iframe,但卻改變 src 屬性,因此原本要載入的內容就不需要了。 多個請求中的第一個失敗了 架設有多個請求陸續發到同一個伺服器,先發的某個請求因為網路問題失敗了,例如 DNS 錯誤、400 等,那後續的請求就會被取消 Self-signed certificate 不被 android Chrome 信任 你發出一個請求到一個 self-signed 網站,因為 SSL certificate 不被 Chrome 信任,因此它就悄悄地取消該請求,也沒有任何訊息。要下載與安裝該 certificate 到 Chrome 中才能解決。 點擊在 form 中的 <button> 若點擊在 form 中的 <button> 要發出 AJAX 請求,也會被瀏覽器取消。 你可以改用 div 或 span 。如果必須要用 button ,必須呼叫 preventDefault() 。 ajax 請求違反 same origin policy 參考資料: https://stackoverflow.com/questions/12009423/what-does-status-canceled-for-a-resource-mean-in-chrome-developer-tools/13459106#13459106 http://twincreations.co.uk/ajax-request-canceled-status-with-no-http-header/