uniapp发送POST请求参数为对象,后端接收无法映射对象

后端不能映射对象,只能获取数字和字符串。
除了获取json字符串然后转成对象还有什么方法

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^

如果后端只能接收数字和字符串类型的参数,那么你可以将对象转换为 JSON 字符串,并在发送请求时将其作为字符串传递。在后端,您可以使用JSON解析库将JSON字符串解析为对象。
在Uniapp中,您可以使用JSON.stringify()函数将JavaScript对象转换为JSON字符串,如下所示:

let obj = {name: 'John', age: 30};
let jsonString = JSON.stringify(obj); // 将对象转换为JSON字符串

然后,您可以使用uni.request()函数发送POST请求,并将JSON字符串作为请求体发送,如下所示:

uni.request({
  url: 'https://example.com/api',
  method: 'POST',
  data: jsonString, // 将JSON字符串作为请求体发送
  success: function (res) {
    console.log(res.data);
  }
});

在后端,您可以使用JSON解析库将JSON字符串解析为对象。例如,如果您使用Node.js编写后端,可以使用JSON.parse()函数将JSON字符串解析为JavaScript对象,如下所示:

let jsonString = '{"name": "John", "age": 30}';
let obj = JSON.parse(jsonString); // 将JSON字符串解析为对象
console.log(obj); // 输出: {name: 'John', age: 30}

请注意,如果您使用的是不同的后端技术栈,可能会有不同的JSON解析库可用。