最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

ES6 fetch函數(shù)與后臺交互實現(xiàn)

 更新時間:2018年11月14日 15:28:36   作者:Ricky_Huang  
最近在學(xué)習(xí)react-native,遇到調(diào)用后端接口的問題。看了看官方文檔,推薦使用es6的fetch來與后端進(jìn)行交互,這篇文章主要介紹了ES6 fetch函數(shù)與后臺交互實現(xiàn),感興趣的小伙伴們可以參考一下

最近在學(xué)習(xí)react-native,遇到調(diào)用后端接口的問題.看了看官方文檔,推薦使用es6的fetch來與后端進(jìn)行交互,在網(wǎng)上找了一些資料.在這里整理,方便以后查詢.

1.RN官方文檔中,可使用XMLHttpRequest

var request = new XMLHttpRequest();
request.onreadystatechange = (e) = >{
  if (request.readyState !== 4) {
    return;
  }
  if (request.status === 200) {
    console.log('success', request.responseText);
  } else {
    console.warn('error');
  }
};
request.open('GET', 'https://mywebsite.com/endpoint.php');
request.send();

這是http的原生方法,這里不做多的介紹.

2.RN官方文檔中,推薦使用fetch

fetch('https://mywebsite.com/endpoint/', {
  method: 'POST',
  headers: {
    'Accept': 'application/json',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    firstParam: 'yourValue',
    secondParam: 'yourOtherValue',
  })
}).then(function(res) {  console.log(res)
})

body中的數(shù)據(jù)就是我們需要向服務(wù)器提交的數(shù)據(jù),比如用戶名,密碼等;如果上述body中的數(shù)據(jù)提交失敗,那么你可能需要把數(shù)據(jù)轉(zhuǎn)換成如下的表單提交的格式:

fetch('https://mywebsite.com/endpoint/', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/x-www-form-urlencoded',
  },
  body: 'key1=value1&key2=value2'
}).then(function(res) {

    console.log(res)
})

這樣可以獲取純文本的返回數(shù)據(jù).

如果你需要返回json格式的數(shù)據(jù):

fetch('https://mywebsite.com/endpoint/').then(function(res) {

  if (res.ok) {

    res.json().then(function(obj) {

      // 這樣數(shù)據(jù)就轉(zhuǎn)換成json格式的了

    })

  }

}, function(ex) {
  console.log(ex)
})

fetch模擬表單提交:

fetch('doAct.action', { 

  method: 'post', 

  headers: { 

   "Content-type": "application/x-www-form-urlencoded; charset=UTF-8" 

  }, 

  body: 'foo=bar&lorem=ipsum' 

 })

 .then(json) 

 .then(function (data) { 

  console.log('Request succeeded with JSON response', data); 

 }) 

 .catch(function (error) { 

  console.log('Request failed', error); 

 });

不過無論是ajax還是fetch,都是對http進(jìn)行了一次封裝,大家各取所好吧.

參考文檔:https://developer.mozilla.org/zh-CN/docs/Web/API/GlobalFetch/fetch

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • JS異步堆棧追蹤之為什么await勝過Promise

    JS異步堆棧追蹤之為什么await勝過Promise

    與直接使用Promise相比,使用async/await不僅可以使代碼更具可讀性,而且還可以在JavaScript引擎中實現(xiàn)一些有趣的優(yōu)化。這篇文章是關(guān)于一個這樣的優(yōu)化,涉及異步代碼的堆棧追蹤。
    2021-04-04
  • JS驗證IP,子網(wǎng)掩碼,網(wǎng)關(guān)和MAC的方法

    JS驗證IP,子網(wǎng)掩碼,網(wǎng)關(guān)和MAC的方法

    這篇文章主要介紹了JS驗證IP,子網(wǎng)掩碼,網(wǎng)關(guān)和MAC的方法,涉及javascript正則表達(dá)式的相關(guān)使用技巧,需要的朋友可以參考下
    2015-07-07
  • JS中去掉if...else的多種方法

    JS中去掉if...else的多種方法

    在JavaScript編程中,過多的if...elseif...else語句可能導(dǎo)致代碼難以維護(hù),可以通過switch語句、對象字面量、函數(shù)映射、數(shù)組或映射對象分發(fā)、提前返回以及使用數(shù)組的find方法來優(yōu)化這種復(fù)雜的條件判斷,提高代碼的可讀性和維護(hù)性,下面就來介紹一下
    2024-09-09
  • javascript中節(jié)點(diǎn)的最近的相關(guān)節(jié)點(diǎn)訪問方法

    javascript中節(jié)點(diǎn)的最近的相關(guān)節(jié)點(diǎn)訪問方法

    parentNode——父節(jié)點(diǎn);firstChild——第一個子節(jié)點(diǎn);lastChild——最后一個子節(jié)點(diǎn);previousSibling——緊挨著的前面的兄弟節(jié)點(diǎn);這樣就可以作短途旅行,訪問當(dāng)前節(jié)點(diǎn)的某些相關(guān)節(jié)點(diǎn),感興趣的你可以參考下哈
    2013-03-03
  • 淺談Webpack4 plugins 實現(xiàn)原理

    淺談Webpack4 plugins 實現(xiàn)原理

    在wabpack 核心功能除了loader應(yīng)該就是plugins插件了,本文主要介紹了Webpack4 plugins 實現(xiàn)原理,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • 解決option標(biāo)簽selected=

    解決option標(biāo)簽selected="selected"屬性失效的問題

    下面小編就為大家?guī)硪黄鉀Qoption標(biāo)簽selected="selected"屬性失效的問題。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧,希望對大家有所幫助
    2017-11-11
  • js null undefined 空區(qū)別說明

    js null undefined 空區(qū)別說明

    js里面這三種東西總是讓人疑惑,特此整理一下
    2010-06-06
  • 基于javaScript的this指向總結(jié)

    基于javaScript的this指向總結(jié)

    下面小編就為大家?guī)硪黄趈avaScript的this指向總結(jié)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • electron制作仿制qq聊天界面的示例代碼

    electron制作仿制qq聊天界面的示例代碼

    這篇文章主要介紹了electron制作仿制qq聊天界面的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-11-11
  • Babylon使用麥克風(fēng)并處理常見問題解決

    Babylon使用麥克風(fēng)并處理常見問題解決

    這篇文章主要為大家介紹了Babylon使用麥克風(fēng)并處理常見問題解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-04-04

最新評論

积石山| 运城市| 滨海县| 泸西县| 睢宁县| 会同县| 蓝山县| 民县| 遂平县| 江口县| 永平县| 绥棱县| 木兰县| 彩票| 珲春市| 科技| 江孜县| 江津市| 五大连池市| 庆阳市| 麻栗坡县| 莱西市| 澎湖县| 邓州市| 奉贤区| 莎车县| 蕉岭县| 余姚市| 那坡县| 吴旗县| 嘉荫县| 新兴县| 紫云| 普兰店市| 秀山| 兴隆县| 沭阳县| 克拉玛依市| 临高县| 遂宁市| 井研县|