1***@qq.com
1***@qq.com
  • 发布:2024-11-20 00:17
  • 更新:2024-11-20 23:48
  • 阅读:115

【报Bug】uni.request post 请求参数对象有字段是数组,序列化有问题

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Mac

PC开发环境操作系统版本号: Mac OS 15.1 (24B2082)

HBuilderX类型: Alpha

HBuilderX版本号: 4.33

手机系统: HarmonyOS NEXT

手机系统版本号: HarmonyOS NEXT Developer Preview

手机厂商: 华为

手机机型: mate 60 pro

页面类型: vue

vue版本: vue3

打包方式: 云端

项目创建方式: HBuilderX

示例代码:
uni.request({  
    url: 'xxx',  
    method:'post',  
    data: {  
              ids: [ ]  
       }  
})

操作步骤:

uni.request({
url: 'xxx',
method:''post,
data: {
ids: [ ]
}
})

预期结果:

SpringBoot 后端报错

 Cannot deserialize value of type `java.util.ArrayList<java.lang.String>` from Object value (token `JsonToken.START_OBJECT`)

实际结果:

正常

bug描述:

uni.request post 请求参数对象有字段是数组,序列化有问题,如下的ids: [ ]

uni.request({  
    url: 'xxx',  
    method:'post',  
    data: {  
              ids: [ ]  
       }  
})

SpringBoot 后端报错

 Cannot deserialize value of type `java.util.ArrayList<java.lang.String>` from Object value (token `JsonToken.START_OBJECT`)

在Harmony Next 会出现,Android IOS正常,(此外 Date 类型 序列化也有问题,不是默认的ISO 格式。)

2024-11-20 00:17 负责人:无 分享
已邀请:
jgj_app

jgj_app

JSON.stringify([]) 试试

1***@qq.com

1***@qq.com (作者) - 一名全栈狗

4.33alpha版本的uni. request方法应该是有问题,post请求里面的字段有数组类型,后端都报错,应该是用的Harmony Next的请求库,对数组数据类型没有处理好

1***@qq.com

1***@qq.com (作者) - 一名全栈狗

"ids":[] 在发送网络请求前会被处理成这种:
"ids":{"length":0}

要回复问题请先登录注册