axios post请求传参数组

就是前端使用axios的post请传参是数组

img


后端接受不到,然后报错,

img


后端报错信息

img

提交的是json对象,对象里面包含tagNameList属性。

@PostMapping("/search/tags")
    public BaseResponse<List<User>> searchUsersByTags(@RequestBody String tagNameList){
        List<String> tagList = JSON.parseArray(JSON.parseObject(tagNameList).getString("tagNameList"), String.class);
        //判空
        if(CollectionUtils.isEmpty(tagList)){
            throw new BusinessException(ErrorCode.PARAMS_ERROR);
        }
        List<User> userList = userService.searchUserByTag(tagList);
        return ResultUtils.success(userList);
    }

设置headers 'Content-Type': 'application/json'试试

1.控制台看请求的路径是否正确
2.控制台看请求的参数名及值是否正确
3.查看是否需要额外的请求头
再有问题喊我

img

重点是:

 headers:{'Content-Type':'application/json'} // 重点

或者参考

你传的 data 也不是数组啊
看看传参的数据类型
需要的话用JSON.stringfiy 转换一下数据类型

感觉是不是要序列化啊,怎么序列化?

JSON.stringify(tags)试一下

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632

你提交的是json对象,接受的是String字符串。
要不前端处理一下,要不后端处理一下