位置: IT常识 - 正文

前端 - get请求传递数组(前端get请求传数组)

编辑:rootadmin
前端 - get请求传递数组

推荐整理分享前端 - get请求传递数组(前端get请求传数组),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:前端get请求传递json参数,前端get请求传递json参数,前端get请求传数组,前端get请求传数组,前端get请求传参字符串,前端get请求传递数组,前端get请求传入url链接 后端接收不全,前端get请求传入url链接 后端接收不全,内容如对您有帮助,希望把文章链接给更多的朋友!

感谢后端让我的知识点 + 1

一、数组请求方式

get 请求有以下几种方式来传递数组:

GET http://localhost:8080/users?roleIds=1&roleIds=2GET http://localhost:8080/users?roleIds[0]=1&roleIds[1]=2GET http://localhost:8080/users?roleIds[]=1&roleIds[]=2GET http://localhost:8080/users?roleIds=1,2二、解决方案自己解决let a = ["b", "c", "d"];let str = "";for(var index in a){ str+='a='+a[index]+'&'}// str: a=b&a=c&a=d借助qs插件

qs.stringify({ a: [“b”, “c”, “d”] }); // a[0]=b&a[1]=c&a[2]=d

前端 - get请求传递数组(前端get请求传数组)

qs.stringify({ a: [“b”, “c”, “d”] }, { indices: false }); // a=b&a=c&a=d

qs 还可以通过arrayFormat 选项进行格式化输出:

qs.stringify({ a: [“b”, “c”] }, { arrayFormat: ‘indices’ }) // a[0]=b&a[1]=c qs.stringify({ a: [“b”, “c”] }, { arrayFormat: ‘brackets’ }) // a[]=b&a[]=c qs.stringify({ a: [“b”, “c”] }, { arrayFormat: ‘repeat’ }) // a=b&a=c qs.stringify({ a: [“b”, “c”] }, { arrayFormat: ‘comma’ }) // a=b,c

三、axios 配置

axios中有一个专门对数据进行序列化的配置属性paramsSerializer

{ url: '/user', method: 'get', // default baseURL: 'https://some-domain.com/api/', // `paramsSerializer` 是一个负责 `params` 序列化的函数 // (e.g. https://www.npmjs.com/package/qs, http://api.jquery.com/jquery.param/) paramsSerializer: function(params) { return qs.stringify(params,{arrayFormat: 'brackets'}) },}

在axios请求拦截器中对参数进行序列化配置

axios.interceptors.request.use(async (config) => {//只针对get方式进行序列化 if (config.method === 'get') { config.paramsSerializer = function(params) { return qs.stringify(params, { arrayFormat: 'repeat' }) } }}四、参数转译

需要注意的是,如果请求参数中带有中括号[],[]在url中属于功能性字符,前端需要使用decodeURIComponent()函数转义,否则会出现400 Bad Request错误。

qs.stringify({ a: [‘b’, ‘c’, ‘d’] }); // a%5B0%5D=b&a%5B1%5D=c&a%5B2%5D=ddecodeURIComponent(qs.stringify({ a: ["b", "c", "d"] }) // a[0]=b&a[1]=c&a[2]=d

参考链接 axios中文文档 vue中get请求如何传递数组参数

本文链接地址:https://www.jiuchutong.com/zhishi/297565.html 转载请保留说明!

上一篇:解决雪花算法生成的ID传输前端后精度丢失(雪花算法workid)

下一篇:Vue.js面试题(21级就业版)(vue面试题简书)

  • 大盛房地产中介公司
  • 高新技术认定标准条件是什么
  • 保本理财收益增值税纳税主体
  • 2019年小型微利企业优惠政策
  • 财政拨款收入和财政补助收入的区别
  • 违反有关规定擅自开设银行账户的
  • 企业员工福利费管理制度内容
  • 开出转账支票怎么入账
  • 房屋出售缴纳税种
  • 税友每年还要交年费?
  • 预缴税款附加税怎么弄
  • 个体户金税盘清卡失败怎么办
  • 加计扣除汇算清缴怎么调减
  • 纳税调增调减项目有哪些各站多少比例
  • 财政总预算会计分为三级
  • 外购无形资产的成本包括进口关税吗
  • 转让股权凭证怎么写
  • 超市的商品进销表怎么做
  • 0元收购股份
  • 一般风险准备金计算公式
  • 免征增值税的税额还要交个人所得税吗
  • 公司补缴印花税的后果
  • 增值税进项税已勾选没确认能自动生成吗
  • 企业退款如何走账
  • 生产经营所得投资者减除费用季度申报填吗
  • 应收账款周转天数减少说明什么
  • 微软windows11iso
  • u盘突然被写保护是坏了吗
  • 跨国公司外汇资金集中
  • php是面向对象语言吗
  • thinkphp框架入门
  • 物流辅助服务费计入什么科目
  • 前端发起请求怎么设置
  • 建行E信通贴现需要发票吗
  • clock set命令
  • phpcms程序
  • 在建工程减值准备是否可以转回
  • 库存商品的进销存怎么做账
  • 固定资产融资租赁是什么意思
  • 2022最新款带采集功能抖音壁纸小程序源码
  • 季度预缴纳税申报表利润总额
  • 递延收益的影响
  • 装修店面装修费的会计分录
  • 上一年的成本没入账怎么做
  • sql server 2008 怎么使用
  • 开具发票要注意的方面是有哪些?
  • 不验资实收资本怎么做账
  • 房屋租赁费如何缴纳个税
  • 分期收款销售商品,收到本期贷款50万元
  • 当月已经认证的发票可以取消认证吗
  • 城镇土地使用税的计税依据
  • 没有发票的福利费支出可以税前扣除吗
  • 非营利医疗机构免征哪几种税
  • 商业企业发出商品的核算方法
  • mysql中的rand函数
  • mysql 5.7.18 winx64密码修改
  • wdcp面板
  • win10快速启动什么意思
  • 修改注册表解决画面撕裂
  • uphclean.exe - uphclean进程是什么意思
  • scair.exe是什么程序
  • win10系统虚拟机安装教程win7
  • win8怎么打开cmd命令窗口?
  • win7旗舰版升级win10教程
  • win8怎么恢复出厂设置找不到恢复环境
  • jquery移动节点的方法
  • Xcode6 和 Cocos2dx3.1以下版本的不兼容问题
  • 基于javaweb的物流管理系统
  • html:xt
  • 了解python
  • 安卓动态图标怎么实现
  • python字典键值对个数
  • js 表格
  • Android 使用log4j2
  • 江苏税务新办企业套餐
  • 回家税务总局全国增值税发票查询
  • 电子发票开具之前有销售方字样,为什么开具出来就不显示了?
  • 新版ukey税盘怎么设置密码
  • 刚出生的宝宝身长多少正常
  • 新疆税务电子
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设