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

vue網(wǎng)絡(luò)請(qǐng)求方案原生網(wǎng)絡(luò)請(qǐng)求和js網(wǎng)絡(luò)請(qǐng)求庫(kù)

 更新時(shí)間:2021年11月23日 16:07:58   作者:tby_37  
這篇文章主要為大家介紹了網(wǎng)絡(luò)請(qǐng)求方案原生網(wǎng)絡(luò)請(qǐng)求和js網(wǎng)絡(luò)請(qǐng)求庫(kù)的過程示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步

一、?原生網(wǎng)絡(luò)請(qǐng)求

1. XMLHttpRequest(w3c標(biāo)準(zhǔn))? ?

// 沒有promise時(shí)的產(chǎn)物

當(dāng)時(shí)的萬物皆回調(diào),太麻煩

2. Fetch? ?

// html5提供的對(duì)象,基于promise 因?yàn)閜romise的存在,為了簡(jiǎn)化網(wǎng)絡(luò)請(qǐng)求。

使用 Fetch - Web API 接口參考 | MDN

Fetch是新的ajax解決方案 Fetch會(huì)返回Promise對(duì)象。fetch不是ajax的進(jìn)一步封裝,而是原生js,沒有使用XMLHttpRequest對(duì)象。

參數(shù):

1、第一個(gè)參數(shù)是URL:

2、第二個(gè)設(shè)置請(qǐng)求的參數(shù),是可選參數(shù)

3、返回使用了Promise 來處理結(jié)果/回調(diào)

fetch(url, options).then(res=>res.json()/text()).then(ret=>console.log(ret))

兼容性問題:

ie低版本不兼容Fetch怎么辦? =》 用第三方的Fetch庫(kù)【fetch-polyfill】

使用fetch進(jìn)行網(wǎng)絡(luò)請(qǐng)求 let url1 ?url2 ?兩個(gè)地址同時(shí)執(zhí)行完畢后才進(jìn)行相關(guān)操作 Promise.all

let url1 不管它是否執(zhí)行成功我都要去處理 Promise.finally

?

?

fetch封裝網(wǎng)絡(luò)請(qǐng)求

二、 js網(wǎng)絡(luò)請(qǐng)求庫(kù)

axios

以promise類型返回 json 數(shù)據(jù)。

文檔:使用說明 · Axios 中文說明 · 看云

Axios 是一個(gè)基于 promise 的 HTTP 庫(kù),可以用在瀏覽器和node.js中。

能攔截請(qǐng)求和響應(yīng),自動(dòng)轉(zhuǎn)換JSON數(shù)據(jù)。axios也是vue作者推薦使用的網(wǎng)絡(luò)請(qǐng)求庫(kù)。

// axios.get/post/put/delete
axios.get(url,config) // config可以設(shè)置頭信息
axios.post(url,data,config)
axios.put(url,data,config)
axios.delete(url,data,config)

或通過實(shí)例請(qǐng)求

?

通過實(shí)例請(qǐng)求,添加設(shè)置信息(常用)!

不通過實(shí)例做統(tǒng)一設(shè)置(不常用),因?yàn)槭墙o所有人都設(shè)置

// 統(tǒng)一給axios設(shè)置
axios.defaults.timeout = 10000
axios.defaults.baseURL = 'http://localhost:3000'
axios.defaults.headers.a = 'admin'

post提交

// post提交
axios.post(url, { id: 1, name: 'aaaa' }).then(res => console.log(res.data))

?或者? ? axios直接用?# 標(biāo)準(zhǔn)寫法(也不常用)

// axios直接用
axios({
  url,
  method:'get',
  data:{}
}).then(res => console.log(res))

攔截器 ? 切面編程

(流水線)? ?(中間件)

1. 請(qǐng)求攔截器(能調(diào)用多次)

axios.interceptors.request.use(config => {
  // 統(tǒng)一設(shè)置請(qǐng)求域名地址
  config.baseURL = 'http://localhost:3000'
  // 超時(shí)時(shí)間
  config.timeout = 1000
  // 設(shè)置頭信息
  config.headers.token = 'mytoken login'
  return config;
}, err => Promise.reject(err))

2. 響應(yīng)攔截器(處理、過濾)

axios.interceptors.response.use(response => {
  return response.data
}, err => {
  // 可以在響應(yīng)攔截器中統(tǒng)一去處理,請(qǐng)求異常
  alert('請(qǐng)求失敗了,請(qǐng)重新請(qǐng)求一次')
  return Promise.reject(err)
});

以上就是網(wǎng)絡(luò)請(qǐng)求方案原生網(wǎng)絡(luò)請(qǐng)求和js網(wǎng)絡(luò)請(qǐng)求庫(kù)的詳細(xì)內(nèi)容,更多關(guān)于原生網(wǎng)絡(luò)請(qǐng)求和js網(wǎng)絡(luò)請(qǐng)求庫(kù)的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • vue的組件通訊方法總結(jié)大全

    vue的組件通訊方法總結(jié)大全

    這篇文章主要為大家介紹了非常全面vue的組件通訊方法總結(jié),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-07-07
  • vue中的非父子間的通訊問題簡(jiǎn)單的實(shí)例代碼

    vue中的非父子間的通訊問題簡(jiǎn)單的實(shí)例代碼

    這篇文章主要介紹了vue中的非父子間的通訊問題簡(jiǎn)單的實(shí)例代碼,需要的朋友可以參考下
    2017-07-07
  • springboot + vue+elementUI實(shí)現(xiàn)圖片上傳功能

    springboot + vue+elementUI實(shí)現(xiàn)圖片上傳功能

    文章描述了如何使用Element UI的el-upload組件實(shí)現(xiàn)前端圖片上傳,并將圖片存儲(chǔ)到后端數(shù)據(jù)庫(kù),同時(shí)在頁面上回顯上傳的圖片,后端通過接口接收?qǐng)D片,并將其存儲(chǔ)在指定位置,然后返回圖片路徑以便在前端顯示,本文給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧
    2025-01-01
  • Vue組件之Tooltip的示例代碼

    Vue組件之Tooltip的示例代碼

    這篇文章主要介紹了Vue組件之Tooltip的示例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-10-10
  • 前端axios取消請(qǐng)求總結(jié)詳解

    前端axios取消請(qǐng)求總結(jié)詳解

    這篇文章主要為大家介紹了前端axios取消請(qǐng)求總結(jié)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-10-10
  • antd form表單使用setFildesValue 賦值失效的解決

    antd form表單使用setFildesValue 賦值失效的解決

    這篇文章主要介紹了antd form表單使用setFildesValue 賦值失效的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。
    2023-04-04
  • Vue3中reactive丟失響應(yīng)式的問題解決(避大坑!)

    Vue3中reactive丟失響應(yīng)式的問題解決(避大坑!)

    這篇文章主要給大家介紹了關(guān)于Vue3中reactive丟失響應(yīng)式的問題解決,vue3中reactive定義的引用類型直接賦值導(dǎo)致數(shù)據(jù)失去響應(yīng)式 ,需要的朋友可以參考下
    2023-07-07
  • 關(guān)于Vue的?Vuex的4個(gè)輔助函數(shù)

    關(guān)于Vue的?Vuex的4個(gè)輔助函數(shù)

    這篇文章主要介紹了關(guān)于Vue的?Vuex的4個(gè)輔助函數(shù),輔助函數(shù)的好處就是幫助我們簡(jiǎn)化了獲取store中state、getter、mutation和action,下面我們一起來看看文章具體的舉例說明吧,需要的小伙伴也可以參考一下
    2021-12-12
  • Vue和React中快速使用Electron的簡(jiǎn)單教程

    Vue和React中快速使用Electron的簡(jiǎn)單教程

    Electron也可以快速地將你的網(wǎng)站打包成一個(gè)原生應(yīng)用發(fā)布,下面這篇文章主要給大家介紹了關(guān)于Vue和React中快速使用Electron的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-05-05
  • vue如何在main.js中配置全局的通用公共組件

    vue如何在main.js中配置全局的通用公共組件

    這篇文章主要介紹了vue如何在main.js中配置全局的通用公共組件問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-01-01

最新評(píng)論

乐业县| 宝清县| 东至县| 牡丹江市| 临猗县| 出国| 唐河县| 常州市| 黔南| 泗洪县| 宁河县| 化州市| 栾城县| 安图县| 闽侯县| 皋兰县| 永济市| 湘潭县| 广水市| 高安市| 白银市| 丰镇市| 和田市| 定安县| 沧源| 南部县| 罗江县| 安达市| 鄂托克前旗| 旌德县| 云和县| 甘南县| 綦江县| 金华市| 宜昌市| 都兰县| 洛隆县| 洪雅县| 新巴尔虎左旗| 辽宁省| 策勒县|