uni-app h5 get请求传递数组会将url参数去重

uni-app h5 get请求传递数组会将url参数去重

示例代码:

uniapp h5 get请求传递数组 会将url参数去重
url:示列 https:/xxxx?token="111’&houseGroupId=122&houseGroupId=112&houseGroupId=334

调用uni.request

真是发出请求 https:/xxxx?token="111’&houseGroupId=334


## 操作步骤:


uniapp h5 get请求传递数组 会将url参数去重  
url:示列 https:/xxxx?token="111'&houseGroupId=122&houseGroupId=112&houseGroupId=334  

调用uni.request  

真是发出请求 https:/xxxx?token="111'&houseGroupId=334  

预期结果:

https:/xxxx?token="111’&houseGroupId=122&houseGroupId=112&houseGroupId=334


## 实际结果:


https:/xxxx?token="111'&houseGroupId=334

bug描述:

uniapp h5 get请求传递数组 会将url参数去重
url:示列 https:/xxxx?token="111’&houseGroupId=122&houseGroupId=112&houseGroupId=334

调用uni.request

真是发出请求 https:/xxxx?token="111’&houseGroupId=334


| 信息类别     | 信息内容       |
|--------------|----------------|
| 产品分类     | uniapp/App     |
| PC开发环境   | Windows        |
| PC系统版本   | win10          |
| HBuilderX    | 正式           |
| HBuilderX版本| 3.1.22         |
| 手机系统     | Android        |
| 手机版本     | Android 10     |
| 手机厂商     | 华为           |
| 手机型号     | nova5i         |
| 页面类型     | vue            |
| 打包方式     | 云端           |
| 项目创建方式 | HBuilderX      |

更多关于uni-app h5 get请求传递数组会将url参数去重的实战教程也可以访问 https://www.itying.com/category-93-b0.html

13 回复

顶上去

更多关于uni-app h5 get请求传递数组会将url参数去重的实战教程也可以访问 https://www.itying.com/category-93-b0.html


顶上去

重复参数的意义是什么呢??? 1=1 1也=2 神逻辑 啊

get 请求 传数组 没做过 ?

回复 GUNDAM: 数组下的arr[1] = 1 arr[1] 也=2? 每见过

你想传 arr = [1,2]?

回复 GUNDAM: 数组那不应该是&houseGroupId=[122,112,334]?你用啥发请求参数的key也不能重复啊

顶上去

别顶上去了 用vuex吧 随便你怎么折腾

顶上去

h5 的话,随便了,直接用 jquery 也可以

request get请求的key值不可重复,会导致同名参数会被覆盖。最好使用数组的方式传递

在uni-app的H5端,使用uni.request进行GET请求时,如果URL中包含重复的参数名(如houseGroupId=122&houseGroupId=112&houseGroupId=334),确实会出现参数被去重的情况,最终只保留最后一个值(houseGroupId=334)。这是因为uni-app底层在处理URL参数时,可能将参数解析为对象,导致同名键值被覆盖。

解决方案:

  1. 修改参数格式:将数组参数用逗号拼接为单个字符串,例如houseGroupId=122,112,334,后端再按约定拆分。
  2. 使用POST请求:如果需要传递数组数据,建议改用POST请求,通过data字段传递数组或对象,避免URL长度限制和参数解析问题。
  3. 手动拼接URL:在调用uni.request前,自行拼接完整的URL字符串,确保参数重复不被处理。例如:
    let url = 'https://xxxx?token=111';
    let ids = [122, 112, 334];
    ids.forEach(id => {
        url += `&houseGroupId=${id}`;
    });
    uni.request({ url });
回到顶部