日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

axios post传递对象_axios的post传参时,将参数转为form表单格式

發布時間:2023/12/31 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 axios post传递对象_axios的post传参时,将参数转为form表单格式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

import axios from ‘axios‘;

import alert from ‘./alert.js‘;

import Qs from ‘qs‘ //引入qs 時axios的自帶模塊

let env = process.env.NODE_ENV;

let root = ‘‘;

if (env === ‘development‘) {

console.log("api");

} else if (env === ‘production‘) {

console.log("pro");

root = ‘‘;

} else {

throw ‘請檢查process.env.NODE_ENV的值,是否符合這些值之一:development,production‘;

}

Date.prototype.format = function (fmt) {

var o = {

"y+": this.getFullYear(),

"M+": this.getMonth() + 1, //月份

"d+": this.getDate(), //日

"H+": this.getHours(), //小時

"m+": this.getMinutes(), //分

"s+": this.getSeconds() //秒

};

if (!fmt) {

fmt = ‘yyyy-MM-dd HH:mm:ss‘;

}

if (/(y+)/.test(fmt))

fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));

for (var k in o) {

if (new RegExp("(" + k + ")").test(fmt)) {

fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));

}

}

return fmt;

}

// 自定義判斷元素類型JS

function toType(obj) {

return ({}).toString.call(obj).match(/\s([a-zA-Z]+)/)[1].toLowerCase();

}

// 參數過濾函數

function filterNull(o) {

for (var key in o) {

if (o[key] === null) {

delete o[key];

}

if (toType(o[key]) === ‘string‘) {

o[key] = o[key].trim();

} else if (toType(o[key]) === ‘date‘) {

o[key] = (o[key].format());

} else if (toType(o[key]) === ‘object‘) {

o[key] = filterNull(o[key]);

} else if (toType(o[key]) === ‘array‘) {

o[key] = filterNull(o[key]);

}

}

return o;

}

function apiAxios(method, url, params, success, failure, authFail) {

console.log(‘url:‘ + url);

if (params) {

params = filterNull(params);

}

var base = "";

if (url.indexOf(".html") != -1) {

base = "";

} else {

base = root;

}

axios({

headers: {

‘Content-Type‘: ‘application/x-www-form-urlencoded; charset=UTF-8‘

},

transformRequest: [function(data) {//在請求之前對data傳參進行格式轉換

data = Qs.stringify(data)

return data

}],

method: method,

url: url,

data: method === ‘POST‘ || method === ‘PUT‘ || method === ‘DELETE‘ ? params : null,

params: method === ‘GET‘ ? params : null,

baseURL: base,

withCredentials: true

}).then(function (res) {

if (res.status >= 200 && res.status<= 210) {

if (success) {

success(res);

}

} else {

//不走

// window.alert(‘error: ‘ + JSON.stringify(res.data));

}

}).catch(function (err) {

let res= err.response;if (err && res) {

console.log(res.status);

if (res.status==504) {

alert.eduToast("服務器連接失敗!請檢查您的網絡或服務器!!",2000);

return;

} else if (res.status==401) {

console.log(‘------------------:status‘+res.status);

console.log(‘------------------:authFail‘+authFail);

}

if (failure) {

failure(res);

} else {

alert.eduToast(res.data,2000);

}

} else {

if(authFail){

// localStorage.setItem(‘login‘, ‘‘);

}else{

console.log(err);

}

}

});

}

// 返回在vue模板中的調用接口

export default {

get: function (url, params, success, failure,authFail) {

return apiAxios(‘GET‘, url, params, success, failure,authFail);

},

post: function (url, params, success, failure) {

return apiAxios(‘POST‘, url, params, success, failure);

},

put: function (url, params, success, failure) {

return apiAxios(‘PUT‘, url, params, success, failure);

},

delete: function (url, params, success, failure) {

return apiAxios(‘DELETE‘, url, params, success, failure);

},

initHeader: function () {

console.log(‘------------------:initHeader‘);

}

};

總結

以上是生活随笔為你收集整理的axios post传递对象_axios的post传参时,将参数转为form表单格式的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。