极乐门资源网 Design By www.ioogu.com
vue中axios 的delete和post,put在传值上有点区别
post和put有三个参数,url,data和config,所以在使用这两个时,可以写成axios.post(api,{id:1}),axios.put(api,{id:1}),但是delete只有两个参数:url和config,data在config中,所以需要写成 axios.delete(api,{data:{id:1}})
如果是服务端将参数当作Java对象来封装接收则 参数格式为:
{data: param}
var param={id:1,name:'zhangsan'} this.$axios.delete("/ehrReferralObjPro", {data: param}).then(function(response) { }
如果服务端将参数当做url 参数 接收,则格式为:{params: param},这样发送的url将变为http:www.XXX.com"htmlcode">
var param={id:1,name:'zhangsan'} this.$axios.delete("/ehrReferralObjPro", {params: param}).then(function(response) { }
axios 数组传值时,我传到后台的是两个字符串数组,但是将参数当成url参数接收时,如果是正常传值,将数组作为一个请求参数传值时,后台接口接收不到匹配的参数,百度之后使用JSON.stringify(),但是使用以后,后台多了一对双引号,最后把后台改成对象封装接收参数,使用的第一种。
补充知识:vue 项目中的this.$get,this.$post等$的用法
vue官网上有这么一句话
结合案例:
// 基于axios 封装的http请求插件 const axios = require('axios'); /** * 以下这种方式需要调用Vue.use方法 调用的时候调用 this.$fetch, this.$post, this.$axios, this.$put, this.$del 方法 */ function coverFormData (data) { return Object.keys(data).map(key => { let value = data[key]; if (typeof value === 'object') { value = JSON.stringify(value); } return encodeURIComponent(key) + '=' + encodeURIComponent(value); }) } const http = { install(Vue, Option) { axios.defaults.headers['Content-Type'] = 'application/x-www-form-urlencoded;charset=utf-8'; if (Option) { // 超时设置 axios.defaults.timeout = Option.timeout || 10000; // 默认请求地址设置 axios.defaults.baseURL = Option.baseURL || ""; // 头部设置 if (Option.headers && typeof Option.headers === 'object') { for (let key in Option.headers) { if (!Option.headers.hasOwnProperty(key)) continue; axios.defaults.headers[key] = Option.headers[key]; } } // 请求/响应拦截器 Option.inRequest && axios.interceptors.request.use(Option.inRequest, error => { Promise.reject(error); }); Option.inResponse && axios.interceptors.response.use(Option.inResponse, error => { Promise.reject(error); }); } /** * @param {string} url * @param {object} params={} 参数可以根据需要自行处理 */ const fetch = (url, params = {}, config = {}) => { const str = coverFormData(params).join('&'); return new Promise((resolve, reject) => { let address = url; if (str) { address += '"" src="/UploadFiles/2021-04-02/20200825151841.jpg">import http from './assets/js/http'; Vue.use(http, { timeout: 60000, inRequest (config) { config.headers['Authorization'] = sessionStorage.getItem('TokenType') +" " + sessionStorage.getItem('AccessToken'); return config; }, inResponse (response) { return response; } });之后在子组件中就可以直接使用this.$post等了
比如:
this.$post("你的url", { CityId: cityid, Type: 3 }) .then(res => { if (res.Success) { this.searchSecondary = res.Data; } }) .catch(error => { console.log(error); });以上这篇Vue中 axios delete请求参数操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
极乐门资源网 Design By www.ioogu.com
极乐门资源网
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
极乐门资源网 Design By www.ioogu.com
暂无Vue中 axios delete请求参数操作的评论...
更新日志
2024年11月15日
2024年11月15日
- 第五街的士高《印度激情版》3CD [WAV+CUE][2.4G]
- 三国志8重制版哪个武将智力高 三国志8重制版智力武将排行一览
- 三国志8重制版哪个武将好 三国志8重制版武将排行一览
- 三国志8重制版武将图像怎么保存 三国志8重制版武将图像设置方法
- 何方.1990-我不是那种人【林杰唱片】【WAV+CUE】
- 张惠妹.1999-妹力新世纪2CD【丰华】【WAV+CUE】
- 邓丽欣.2006-FANTASY【金牌大风】【WAV+CUE】
- 饭制《黑神话》蜘蛛四妹手办
- 《燕云十六声》回应跑路:年内公测版本完成95%
- 网友发现国内版《双城之战》第二季有删减:亲亲环节没了!
- 邓丽君2024-《漫步人生路》头版限量编号MQA-UHQCD[WAV+CUE]
- SergeProkofievplaysProkofiev[Dutton][FLAC+CUE]
- 永恒英文金曲精选4《TheBestOfEverlastingFavouritesVol.4》[WAV+CUE]
- 群星《国风超有戏 第9期》[320K/MP3][13.63MB]
- 群星《国风超有戏 第9期》[FLAC/分轨][72.56MB]