gmnon.cn-疯狂蹂躏欧美一区二区精品,欧美精品久久久久a,高清在线视频日韩欧美,日韩免费av一区二区

站長資訊網
最全最豐富的資訊網站

一文聊聊vue項目中怎么使用axios?基本用法分享

一文聊聊vue項目中怎么使用axios?基本用法分享

前端(vue)入門到精通課程:進入學習
Apipost = Postman + Swagger + Mock + Jmeter 超好用的API調試工具:點擊使用

提示:本篇詳解axios在vue項目中的實例。在使用Vue.js框架開發前端項目時,會經常發送ajax請求服務端接口,在開發過程中,需要對axios進一步封裝,方便在項目中的使用。【學習視頻分享:vue視頻教程、web前端視頻】

Axios簡介

axios框架全稱(ajax – I/O – system):

  • 基于promise用于瀏覽器和node.js的http客戶端,因此可以使用Promise API

一文聊聊vue項目中怎么使用axios?基本用法分享

一、axios是干啥的

說到axios我們就不得不說下Ajax。在舊瀏覽器頁面在向服務器請求數據時,因為返回的是整個頁面的數據,頁面都會強制刷新一下,這對于用戶來講并不是很友好。并且我們只是需要修改頁面的部分數據,但是從服務器端發送的卻是整個頁面的數據,十分消耗網絡資源。而我們只是需要修改頁面的部分數據,也希望不刷新頁面,因此異步網絡請求就應運而生。

Ajax(Asynchronous JavaScript and XML):
異步網絡請求。Ajax能夠讓頁面無刷新的請求數據。

實現ajax的方式有多種,如jQuery封裝的ajax,原生的XMLHttpRequest,以及axios。但各種方式都有利弊:

  • 原生的XMLHttpRequest的配置和調用方式都很繁瑣,實現異步請求十分麻煩
  • jQuery的ajax相對于原生的ajax是非常好用的,但是沒有必要因為要用ajax異步網絡請求而引用jQuery框架

Axios(ajax i/o system):
這不是一種新技術,本質上還是對原生XMLHttpRequest的封裝,可用于瀏覽器和nodejs的HTTP客戶端,只不過它是基于Promise的,符合最新的ES規范。具備以下特點:

  • 在瀏覽器中創建XMLHttpRequest請求
  • 在node.js中發送http請求
  • 支持Promise API
  • 攔截請求和響應
  • 轉換請求和響應數據
  • 取消要求
  • 自動轉換JSON數據
  • 客戶端支持防止CSRF/XSRF(跨域請求偽造)

一文聊聊vue項目中怎么使用axios?基本用法分享

二、安裝使用

安裝有三種方式:

npm安裝

 npm install axios
登錄后復制

bower安裝

bower install axios
登錄后復制

通過cdn引入

<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
登錄后復制

在vue項目的main.js文件中引入axios

import axios from 'axios' Vue.prototype.$axios = axios
登錄后復制

在組件中使用axios

<script> 	export default { 		mounted(){ 			this.$axios.get('/goods.json').then(res=>{ 				console.log(res.data); 			}) 		} 	} </script>
登錄后復制

三、Axios請求方式

1、axios可以請求的方法:

  • get:獲取數據,請求指定的信息,返回實體對象
  • post:向指定資源提交數據(例如表單提交或文件上傳)
  • put:更新數據,從客戶端向服務器傳送的數據取代指定的文檔的內容
  • patch:更新數據,是對put方法的補充,用來對已知資源進行局部更新
  • delete:請求服務器刪除指定的數據

2、get請求

示例代碼

方法一

 //請求格式類似于 http://localhost:8080/goods.json?id=1 this.$axios.get('/goods.json',{     			params: {                     id:1                 } 			}).then(res=>{ 					console.log(res.data); 				},err=>{ 					console.log(err); 			})
登錄后復制

方法二

this.$axios({ 		method: 'get', 		url: '/goods.json',     	params: {             id:1         } 	}).then(res=>{ 		console.log(res.data); 	},err=>{ 		console.log(err); 	})
登錄后復制

3、post請求

post請求一般分為兩種類型

1、form-data 表單提交,圖片上傳、文件上傳時用該類型比較多
2、application/json 一般是用于 ajax 異步請求

示例代碼

方法一

this.$axios.post('/url',{ 				id:1 			}).then(res=>{ 				console.log(res.data); 			},err=>{ 				console.log(err); 			})
登錄后復制

方法二

$axios({ 	method: 'post', 	url: '/url', 	data: { 		id:1 	} }).then(res=>{ 	console.log(res.data); },err=>{ 	console.log(err); })
登錄后復制

form-data請求

let data = { 	//請求參數 }  let formdata = new FormData(); for(let key in data){ 	formdata.append(key,data[key]); }  this.$axios.post('/goods.json',formdata).then(res=>{ 	console.log(res.data); },err=>{ 	console.log(err); })
登錄后復制

4、put和patch請求

示例代碼

put請求

this.$axios.put('/url',{ 				id:1 			}).then(res=>{ 				console.log(res.data); 			})
登錄后復制

patch請求

this.$axios.patch('/url',{ 				id:1 			}).then(res=>{ 				console.log(res.data); 			})
登錄后復制

5、delete請求

示例代碼

參數以明文形式提交

this.$axios.delete('/url',{ 				params: { 					id:1 				} 			}).then(res=>{ 				console.log(res.data); 			})
登錄后復制

參數以封裝對象的形式提交

this.$axios.delete('/url',{ 				data: { 					id:1 				} 			}).then(res=>{ 				console.log(res.data); 			})  //方法二 axios({     method: 'delete',     url: '/url',     params: { id:1 }, //以明文方式提交參數     data: { id:1 } //以封裝對象方式提交參數 }).then(res=>{ 	console.log(res.data); })
登錄后復制

6、并發請求

并發請求:同時進行多個請求,并統一處理返回值

示例代碼

 this.$axios.all([ 	this.$axios.get('/goods.json'), 	this.$axios.get('/classify.json') ]).then( 	this.$axios.spread((goodsRes,classifyRes)=>{ 		console.log(goodsRes.data); 		console.log(classifyRes.data); 	}) )
登錄后復制

四、Axios實例

1、創建axios實例

示例代碼

let instance = this.$axios.create({ 				baseURL: 'http://localhost:9090', 				timeout: 2000 			}) 			 instance.get('/goods.json').then(res=>{ 	console.log(res.data); })
登錄后復制

可以同時創建多個axios實例。
axios實例常用配置:

  • baseURL 請求的域名,基本地址,類型:String
  • timeout 請求超時時長,單位ms,類型:Number
  • url 請求路徑,類型:String
  • method 請求方法,類型:String
  • headers 設置請求頭,類型:Object
  • params 請求參數,將參數拼接在URL上,類型:Object
  • data 請求參數,將參數放到請求體中,類型:Object

2、axios全局配置

示例代碼

//配置全局的超時時長 this.$axios.defaults.timeout = 2000; //配置全局的基本URL this.$axios.defaults.baseURL = 'http://localhost:8080';
登錄后復制

3、axios實例配置

示例代碼

let instance = this.$axios.create(); instance.defaults.timeout = 3000;
登錄后復制

4、axios請求配置

示例代碼

this.$axios.get('/goods.json',{ 				timeout: 3000 			}).then()
登錄后復制

以上配置的優先級為:請求配置 > 實例配置 > 全局配置

五、攔截器

攔截器:在請求或響應被處理前攔截它們

1、請求攔截器

示例代碼

this.$axios.interceptors.request.use(config=>{ 				// 發生請求前的處理  				return config 			},err=>{ 				// 請求錯誤處理  				return Promise.reject(err); 			})  //或者用axios實例創建攔截器 let instance = $axios.create(); instance.interceptors.request.use(config=>{     return config })
登錄后復制

2、響應攔截器

示例代碼

this.$axios.interceptors.response.use(res=>{ 				//請求成功對響應數據做處理  				return res //該返回對象會傳到請求方法的響應對象中 			},err=>{ 				// 響應錯誤處理  				return Promise.reject(err); 			})
登錄后復制

3、取消攔截

示例代碼

let instance = this.$axios.interceptors.request.use(config=>{ 				config.headers = { 					token: '' 				} 				return config 			}) 			 //取消攔截 this.$axios.interceptors.request.eject(instance);
登錄后復制

六、錯誤處理

示例代碼

this.$axios.get('/url').then(res={  			}).catch(err=>{ 				//請求攔截器和響應攔截器拋出錯誤時,返回的err對象會傳給當前函數的err對象 				console.log(err); 			})
登錄后復制

七、取消請求

示例代碼

let source = this.$axios.CancelToken.source();  this.$axios.get('/goods.json',{ 				cancelToken: source 			}).then(res=>{ 				console.log(res) 			}).catch(err=>{ 				//取消請求后會執行該方法 				console.log(err) 			})  //取消請求,參數可選,該參數信息會發送到請求的catch中 source.cancel('取消后的信息');
登錄后復制

(學習視頻分享:web前端開發、編程基礎視頻)

贊(0)
分享到: 更多 (0)
?
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
gmnon.cn-疯狂蹂躏欧美一区二区精品,欧美精品久久久久a,高清在线视频日韩欧美,日韩免费av一区二区
国产一区一区三区| 久久人妻精品白浆国产 | 国产精品免费成人| 亚欧精品在线视频| 91免费黄视频| 国产精欧美一区二区三区白种人| 人人妻人人做人人爽| 伊人网在线综合| 激情深爱综合网| 亚洲一二区在线观看| 成人三级视频在线播放| 4444亚洲人成无码网在线观看| 成人3d动漫一区二区三区| 精品少妇人欧美激情在线观看| 亚洲欧洲日本精品| 黑人糟蹋人妻hd中文字幕 | 美女网站视频黄色| www黄色日本| 99在线免费视频观看| 日本高清一区二区视频| 男人女人黄一级| 久久精品香蕉视频| 18岁网站在线观看| 久久久久久久久久网| 欧洲精品在线播放| 久久观看最新视频| 亚洲免费视频播放| 天堂av免费看| 亚洲黄色网址在线观看| 日本高清免费观看| 日本中文字幕在线不卡| 男女污污视频网站| 99999精品| 国产高清精品软男同| 免费看啪啪网站| 影音先锋男人的网站| 99精品视频国产| 久久久久久久久久毛片| 99精品999| 欧美xxxx吸乳| 欧美图片激情小说| 黄色一级片播放| 国产乱子夫妻xx黑人xyx真爽| 国产极品粉嫩福利姬萌白酱 | 成人中文字幕在线播放| 噜噜噜久久亚洲精品国产品麻豆| 黑人糟蹋人妻hd中文字幕| 日韩在线第三页| 国产小视频精品| 波多野结衣在线免费观看| 久久观看最新视频| 成人免费毛片在线观看| www.中文字幕在线| 亚洲欧美日韩三级| www.激情网| 麻豆传传媒久久久爱| 天天干天天操天天玩| 成人在线免费观看网址| 欧美 国产 综合| 自拍偷拍视频在线| 成年网站在线免费观看| 激情成人在线观看| 欧美变态另类刺激| 亚洲男人天堂av在线| 欧美日韩不卡在线视频| 香蕉视频网站入口| 国产爆乳无码一区二区麻豆| 国产三区在线视频| 日本黄网站色大片免费观看| 六月激情综合网| 无码日本精品xxxxxxxxx| 男女爽爽爽视频| 久草免费福利在线| 中文字幕免费高| 国产av人人夜夜澡人人爽| 99精品一区二区三区的区别| 国产精品亚洲a| 中文精品无码中文字幕无码专区| 国产自偷自偷免费一区| 鲁一鲁一鲁一鲁一色| 国产精品久久久久久9999| 九九九九免费视频| 日本中文字幕在线视频观看| 久久久久久综合网| 欧美黑人又粗又大又爽免费| 成人精品视频在线播放| 亚洲小说欧美另类激情| 日韩在线一区视频| 天天操天天摸天天爽| 成年人免费在线播放| 国产美女作爱全过程免费视频| 日本中文字幕在线不卡| 午夜视频在线观| 中文字幕资源在线观看| 奇米影音第四色| www.国产区| 国产v亚洲v天堂无码久久久| 欧美 激情 在线| 91丨porny丨探花| 日日碰狠狠添天天爽超碰97| 国产精品999视频| 青青草成人免费在线视频| 欧美 日韩 国产精品| 亚洲高潮无码久久| 日韩在线视频在线| 国产欧美久久久久| 国产午夜福利在线播放| 国产97在线 | 亚洲| 天天夜碰日日摸日日澡性色av| 国产一区二区三区乱码| 久久久亚洲精品无码| 亚洲 高清 成人 动漫| 不卡影院一区二区| 国产无遮挡猛进猛出免费软件| 国产九九在线观看| 亚洲五月激情网| 成人毛片100部免费看| 福利视频一区二区三区四区| 你真棒插曲来救救我在线观看| 加勒比成人在线| 乱子伦视频在线看| 中文字幕 日韩 欧美| 国产精品12p| 无码专区aaaaaa免费视频| 久久久久久免费看| 狠狠躁狠狠躁视频专区| 亚洲黄色片免费看| 全黄性性激高免费视频| 孩娇小videos精品| 亚洲理论电影在线观看| 欧美aⅴ在线观看| 国产手机视频在线观看| 久久久一本二本三本| 天堂中文视频在线| 成人在线免费高清视频| 国产成人久久婷婷精品流白浆| 亚洲综合日韩欧美| 国产手机免费视频| 色www免费视频| 无码 制服 丝袜 国产 另类| 女人高潮一级片| 玩弄中年熟妇正在播放| 97超碰人人爽| 丝袜老师办公室里做好紧好爽| 欧美一级特黄aaa| 日韩亚洲在线视频| 成人午夜免费在线视频| 毛片毛片毛片毛| 欧美日韩国产精品激情在线播放| 亚洲综合在线一区二区| 一本大道熟女人妻中文字幕在线| 久久精品一二三四| 国产又黄又猛又粗又爽的视频| 日b视频免费观看| 午夜免费一级片| 黄色三级视频在线| 日韩欧美国产免费| 久久亚洲a v| 亚洲 欧洲 日韩| 欧美三级午夜理伦三级富婆| 久久综合色视频| 很污的网站在线观看| 国产精品一区在线免费观看| 亚洲图片 自拍偷拍| 国产黄色特级片| av动漫在线观看| 妞干网在线视频观看| 免费毛片网站在线观看| 在线观看日本www| 日本高清免费观看| 手机看片福利日韩| 亚洲 欧美 日韩系列| 精品日韩久久久| 日本超碰在线观看| 特级丰满少妇一级| 亚洲色图久久久| 天天干天天爽天天射| 亚洲精品高清无码视频| 国产无套内射久久久国产| 妞干网在线免费视频| www.激情小说.com| 五月天六月丁香| www国产免费| 黄色www网站| 成人性做爰aaa片免费看不忠| 福利在线一区二区三区| 天天操天天爱天天爽| 午夜不卡福利视频| a级片一区二区| 中文字幕无码精品亚洲35| 校园春色 亚洲色图| 两性午夜免费视频| av免费看网址| 999香蕉视频| 手机看片日韩国产| 欧美 日韩 亚洲 一区| 黄色高清无遮挡| 午夜啪啪福利视频| 日韩av在线第一页| 在线免费看v片|