Vue 設置axios請求格式為form-data的操作步驟
Cover

在Vue中使用axios
這個老生常談了,還是先記錄一遍,方面后面自己查。
!!! 設置form-data請求格式直接翻到后面看。
1. 安裝axios
在項目下執(zhí)行npm install axios。
之后在main.js中,添加:
import axios from 'axios' //引入 //Vue.use(axios) axios不能用use 只能修改原型鏈 Vue.prototype.$axios = axios
2. 發(fā)送GET請求
axios封裝了get方法,傳入請求地址和請求參數(shù),就可以了,同樣支持Promise。
//不帶參數(shù)的get請求
let url = "..."
this.$axios.get(url)
.then((res) => {
console.log(res) //返回的數(shù)據(jù)
})
.catch((err) => {
console.log(err) //錯誤信息
})
不過它的參數(shù)需要寫在params屬性下,也就是:
//帶參數(shù)的get請求
let url = "...getById"
this.$axios.get(url, {
params: {
id: 1
}
})
.then((res) => {
console.log(res) //返回的數(shù)據(jù)
})
.catch((err) => {
console.log(err) //錯誤信息
})
2. 發(fā)送post請求
與上面相同,就是參數(shù)不需要寫在params屬性下了,即:
//帶參數(shù)的post請求
let url = "...getById"
let data = {
id: 1
}
this.$axios.post(url, data)
.then((res) => {
console.log(res) //返回的數(shù)據(jù)
})
.catch((err) => {
console.log(err) //錯誤信息
})
3. 經(jīng)典寫法
axios也可以用jQ的寫法,不過回調(diào)函數(shù)還是Promise的寫法,如:
this.$axios({
method: 'post',
url: '...',
data: {
firstName: 'Fred',
lastName: 'Flintstone'
}
}).then((res) => {
console.log(res)
})
設置form-data請求格式
我用默認的post方法發(fā)送數(shù)據(jù)的時候發(fā)現(xiàn)后端獲取不到數(shù)據(jù),然而在network中看到參數(shù)是的確傳出去的了。而且用postman測試的時候也是可以的,比較了下兩個的不同發(fā)現(xiàn)是postman使用的是form-data格式,于是用form-data格式再次請求,發(fā)現(xiàn)OJBK
在查找設置請求格式的時候花了點時間,網(wǎng)上的方案有好幾個,這個我親測成功,發(fā)上來。
import axios from "axios" //引入
//設置axios為form-data
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';
axios.defaults.headers.get['Content-Type'] = 'application/x-www-form-urlencoded';
axios.defaults.transformRequest = [function (data) {
let ret = ''
for (let it in data) {
ret += encodeURIComponent(it) + '=' + encodeURIComponent(data[it]) + '&'
}
return ret
}]
//然后再修改原型鏈
Vue.prototype.$axios = axios
以上這篇Vue 設置axios請求格式為form-data的操作步驟就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Vue2實現(xiàn)數(shù)字滾動翻頁效果的示例代碼
這篇文章主要為大家詳細介紹了Vue2如何實現(xiàn)數(shù)字滾動翻頁效果,文中的示例代碼講解詳細,具有一定的借鑒價值,有需要的小伙伴可以參考一下2024-03-03
vue中v-model指令與.sync修飾符的區(qū)別詳解
本文主要介紹了vue中v-model指令與.sync修飾符的區(qū)別詳解,詳細的介紹了兩個的用法和區(qū)別,感興趣的可以了解一下2021-08-08
vue?this.$router六種方法使用示例總結(jié)分析
這篇文章主要為大家介紹了vue this.$router六種方法使用示例總結(jié)分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-06-06
vue2.0 better-scroll 實現(xiàn)移動端滑動的示例代碼
本篇文章主要介紹了vue2.0 better-scroll 實現(xiàn)移動端滑動的示例代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下。2018-01-01
解決VUE中document.body.scrollTop為0的問題
今天小編就為大家分享一篇解決VUE中document.body.scrollTop為0的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-09-09
前端Vue?select下拉框使用以及監(jiān)聽事件詳解
由于前端項目使用的是Vue.js和bootstrap整合開發(fā),中間用到了select下拉框,這篇文章主要給大家介紹了關于前端Vue?select下拉框使用以及監(jiān)聽事件的相關資料,需要的朋友可以參考下2024-03-03
Vue 集成 PDF.js 實現(xiàn) PDF 預覽和添加水印的步驟
這篇文章主要介紹了如何在 Vue 中集成 Mozilla/PDF.js ,實現(xiàn)自定義的 PDF 預覽器,以及給被預覽的 PDF 添加水印2021-01-01

