post请求报400错误

出现问题的原始写法

export function demo({ param,pageNo, pageSize}) {
  return request(`file/page?pageNo=${pageNo}&pageSize=${pageSize}`, {
    method: 'POST',
    headers: {
      "Content-Type": "application/json;charset=UTF-8",
    },
    body: param,
  });
}

发送请求之后报400的错误

在查找了解决方法后找到

原因有:

  1. 前端提交数据的字段名称或者是字段类型和后台的实体类不一致,导致无法封装;
  2. 前端提交的到后台的数据应该是 json 字符串类型,而前端没有将对象转化为字符串类型;

解决方案:

1、对照字段名称,类型保证一致性
2、使用 stringify 将前端传递的对象转化为字符串

data: JSON.stringify(param);

最后将代码改为如下方式,问题得以解决

export function demo({ param,pageNo, pageSize}) {
  return request(`file/page?pageNo=${pageNo}&pageSize=${pageSize}`, {
    method: 'POST',
    headers: {
      "Content-Type": "application/json;charset=UTF-8",
    },
    body: JSON.stringify(param),
  });
}

学习文档:https://www.runoob.com/w3cnote/http-400.html