2 个回答

image.png

image.png

你绑定的名字是 ids[] 而你前端发的是id
参数名字都对应不上

后端参数改成 @RequestBody String[] ids
前端参数改成 data: ids
前端 ajax 代码应改成

// 发送 json
$.ajax({
  url: "你的url",
  method: "POST",
  data: JSON.stringify(ids),
  contentType: "application/json",
  async: false, // async: false 以同步的方式执行,页面会卡住,不希望卡住可去除该属性,默认异步执行
  success(res) {
    // 请求成功
  }
})

首先前端传的是 json 格式的请求体,所以用 @RequestBody,而 @RequestParam 是指

  1. 查询参数,即 url? 之后以 & 分割的参数,也可以放在请求体中,类型为 application/x-www-form-urlencoded
  2. 表单数据,类型为 multipart/form-data

其次请求体必须和后端参数的类型匹配,你的参数是一个数组,所以前端 data 即请求体也要是一个数组

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题