簡單的XMLHttpRequest方案——Fetch

了解更多装诡,請關(guān)注我的微信公眾號:mellong

本周逻杖,新的Fetch標(biāo)準(zhǔn)已經(jīng)登陸Chrome Canary(version 42)壮虫。這是我一直在等待的規(guī)格之一澳厢。用一個簡潔的界面確實簡化了XMLHttpRequest,并配有內(nèi)置保證囚似。

所以剩拢,給你一些的認識,這里是你目前怎么寫一個XMLHttpRequest:

var req = new XMLHttpRequest();req.onload = function () {  
   console.log(this.responseText);
};
req.open('GET', 'http://someendpoint.com/api/stuff', true);
req.send();

這是一個非常簡單的例子饶唤,如你所知徐伐,它可以在你開始處理錯誤的情況下得到更多詳細的信息。

而現(xiàn)在募狂,這是和window.fetch()進行網(wǎng)絡(luò)請求一樣的办素,但不一樣的是額外增加了錯誤處理:

window.fetch('http://someendpoint.com/api/stuff').then(function (response) {    
    return reponse.text();
}).then(function (text) {    
    console.log(text);
}).catch(function (e) {    
    console.log(e);
});

在我看了這種寫法更簡單,而且祸穷,這也是定制的:

window.fetch('http://someendpoint.com/api/stuff', {
    method: 'POST',
    headers: {
        'Accept': 'application/json', 
        'Content-Type': 'application/json'
    },
    body: JSON.stringify({ someField: 1234, anotherField: 'foobar' })
}).then(function (response) {
    return reponse.text();
}).then(function (text) {
    console.log(text);
}).catch(function (e) {
    console.log(e);});

看一看這個規(guī)范性穿,這里面還有包括更多的特性。

那么其他瀏覽器支持嗎雷滚?

Github上發(fā)布了一個Fetch polyfill工具需曾,與所有的瀏覽器工作得很好(IE9+在內(nèi)),只要確保你也安裝es6-promise
polyfill工具來保證支持舊的瀏覽器揭措。

翻譯源文: http://blog.rogeriopvl.com/archives/simple-xmlhttprequests-with-window.fetch/

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末胯舷,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子绊含,更是在濱河造成了極大的恐慌桑嘶,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,311評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件躬充,死亡現(xiàn)場離奇詭異逃顶,居然都是意外死亡,警方通過查閱死者的電腦和手機充甚,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,339評論 2 382
  • 文/潘曉璐 我一進店門以政,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人伴找,你說我怎么就攤上這事盈蛮。” “怎么了技矮?”我有些...
    開封第一講書人閱讀 152,671評論 0 342
  • 文/不壞的土叔 我叫張陵抖誉,是天一觀的道長殊轴。 經(jīng)常有香客問我,道長袒炉,這世上最難降的妖魔是什么旁理? 我笑而不...
    開封第一講書人閱讀 55,252評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮我磁,結(jié)果婚禮上孽文,老公的妹妹穿的比我還像新娘。我一直安慰自己夺艰,他們只是感情好芋哭,可當(dāng)我...
    茶點故事閱讀 64,253評論 5 371
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著劲适,像睡著了一般楷掉。 火紅的嫁衣襯著肌膚如雪厢蒜。 梳的紋絲不亂的頭發(fā)上霞势,一...
    開封第一講書人閱讀 49,031評論 1 285
  • 那天,我揣著相機與錄音斑鸦,去河邊找鬼愕贡。 笑死,一個胖子當(dāng)著我的面吹牛巷屿,可吹牛的內(nèi)容都是我干的固以。 我是一名探鬼主播,決...
    沈念sama閱讀 38,340評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼嘱巾,長吁一口氣:“原來是場噩夢啊……” “哼憨琳!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起旬昭,我...
    開封第一講書人閱讀 36,973評論 0 259
  • 序言:老撾萬榮一對情侶失蹤篙螟,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后问拘,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體遍略,經(jīng)...
    沈念sama閱讀 43,466評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,937評論 2 323
  • 正文 我和宋清朗相戀三年骤坐,在試婚紗的時候發(fā)現(xiàn)自己被綠了绪杏。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,039評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡纽绍,死狀恐怖蕾久,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情拌夏,我是刑警寧澤僧著,帶...
    沈念sama閱讀 33,701評論 4 323
  • 正文 年R本政府宣布叫编,位于F島的核電站,受9級特大地震影響霹抛,放射性物質(zhì)發(fā)生泄漏搓逾。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,254評論 3 307
  • 文/蒙蒙 一杯拐、第九天 我趴在偏房一處隱蔽的房頂上張望霞篡。 院中可真熱鬧,春花似錦端逼、人聲如沸朗兵。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,259評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽余掖。三九已至,卻和暖如春礁鲁,著一層夾襖步出監(jiān)牢的瞬間盐欺,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評論 1 262
  • 我被黑心中介騙來泰國打工仅醇, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留冗美,地道東北人。 一個月前我還...
    沈念sama閱讀 45,497評論 2 354
  • 正文 我出身青樓析二,卻偏偏與公主長得像粉洼,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子叶摄,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,786評論 2 345

推薦閱讀更多精彩內(nèi)容

  • 本文詳細介紹了 XMLHttpRequest 相關(guān)知識属韧,涉及內(nèi)容: AJAX、XMLHTTP蛤吓、XMLHttpReq...
    semlinker閱讀 13,613評論 2 18
  • 本博客轉(zhuǎn)自:「作者:若愚鏈接:https://zhuanlan.zhihu.com/p/22361337來源:知乎...
    韓寶億閱讀 2,751評論 0 3
  • 常見試題 行內(nèi)元素:會在水平方向排列宵喂,不能包含塊級元素,設(shè)置width無效柱衔,height無效(可以設(shè)置line-h...
    他大舅啊閱讀 2,422評論 1 5
  • 因個人精力有限樊破,暫停簡書的維護,歡迎大家關(guān)注我的知乎https://www.zhihu.com/people/we...
    尾尾閱讀 1,166評論 3 13
  • 1唆铐、同源策略 同源策略限制從一個源加載的文檔或腳本如何與來自另一個源的資源進行交互哲戚。 一個源的定義:如果協(xié)議,端口...
    wengjq閱讀 4,915評論 3 16