咱們在使用HttpWatch進行Web調試的過程當中有時候會看到非HTTP Status Code(狀態碼)的值,例如:(Aborted)。 ajax
(Aborted)是HttpWatch中定義的三種非HTTP Status Code的其中一種,這些狀態信息在HttpWatch中被用來表示服務器沒有對發出的請求返回任何Status Code: 瀏覽器
最後的兩個值所表示的含義是顯而易見的。(Cache)用來表示請求中所返回的內容不是從服務器中取回的而是直接從瀏覽器的緩存中取回的。所以若是沒有與服務器進行真實的信息交換則服務器不會返回Status Code。另一種是ERROR_*,它用來表示當IE瀏覽器請求數據時發生錯誤致使請求失敗。 緩存
(Aborted)表示的內容相對上面兩個要更加複雜一些,它發生在IE開始處理對指定URL的請求,但請求被停止的情形下。如下是幾種請求被停止的典型示例: 服務器
其實上述問題的核心就是「服務器所接收的請求是否會被(強行)停止?」,這個問題的答案取決於請求什麼時候會被丟棄。經過查看Httpwatch的timing chart能夠清楚的看到請求被取消的時機。 網站
下面就是一個請求在鏈接過程當中被停止的例子: spa
上面的例子中因爲請求尚未到達Send階段所以服務器不會接收到客戶端所發出的請求 pwa
下面的這個被Aborted情形出如今IE瀏覽器在等待服務器返回請求結果的過程當中 調試
HttpWatch中之因此會定義上述三種信息主要是爲了反映出用戶與網站見交互的一些信息(非Status Code),而不是表示請求發生了錯誤 事件