最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

記錄一個今天下午看到的源生ajax的readyState!=4的else錯誤

2022-01-21 19:28 作者:張方興  | 我要投稿




首先看一下我的頁面。


這是對應的ajaxToCheckHealth()代碼,正確生寫法。如下所示。


展示效果如下圖所示。




發(fā)現(xiàn)一個特別好玩的事是,如果在源生代碼里寫上,else 即代碼如下所示。

?


我加了一下else 輸出了 請求接口錯誤之后。發(fā)現(xiàn)的的確確請求到了后臺,但是返回會調用三次else 不會再走if。也就是說這個ajax 永遠都無法成功!


提示如下所示。


提示框會輸出三次。沒太探究里面原因是為什么,因為畢竟現(xiàn)在已經(jīng)很少寫源生了,都是直接用的各種框架,類似于用jQuery的success直接就能調用。我猜是因為?readyState值的原因。


readyState有五種可能的值:
0 (未初始化):(XMLHttpRequest)對象已經(jīng)創(chuàng)建,但還沒有調用open()方法。
1 (載入):已經(jīng)調用open() 方法,但尚未發(fā)送請求。
2 (載入完成):請求已經(jīng)發(fā)送完成。
3 (交互):可以接收到部分響應數(shù)據(jù)。
4 (完成):已經(jīng)接收到了全部數(shù)據(jù),并且連接已經(jīng)關閉。



所以必須是http交互完成 readyState=4的時候 剛剛好前面值等于200 才算success一次http request。但是因為ajax是異步的, 所以一旦加上else的話,因為時間差的原因,導致if判斷無法成功。


當然了 以上只是我的猜測,不過我估計也八九不離十了,這也算記錄一下今天下午發(fā)生的好玩的事。好久不寫這段代碼了,就這么幾句話寫了好幾個小時。悲哀。T.T


記錄一個今天下午看到的源生ajax的readyState!=4的else錯誤的評論 (共 條)

分享到微博請遵守國家法律
长治县| 德钦县| 晋城| 泸定县| 大理市| 陈巴尔虎旗| 安西县| 黄浦区| 屯昌县| 平舆县| 二连浩特市| 修水县| 茂名市| 大洼县| 海盐县| 郎溪县| 望江县| 金溪县| 衡东县| 靖安县| 建德市| 突泉县| 乡宁县| 梨树县| 黑龙江省| 苏尼特右旗| 射阳县| 赣州市| 五华县| 壶关县| 公主岭市| 吴江市| 宁夏| 灵丘县| 宁蒗| 天全县| 峡江县| 桐庐县| 抚顺市| 永寿县| 南城县|