前后端接口传递参数之接口不通前端指定Content-Type类型传递给后端

一、前端接口传参给后端

问题排查: 前端请求后端接口发现无法请求成功,一直报400,后端无错误输出,所以问题就在前端这边进行排查

  1. 前端使用postman测试时发现接口是通的
  2. 经排查发现是前后端的参数格式不一致,前端传递的是json格式,而后端接收的是form-data格式。

说明:后端未给接口文档

需求更正:前端在请求后端接口时默认传递的是json格式的数据,因此在请求个别接口时前端指定了Content-Type类型:application/x-www-form-urlencoded

// 代码如下:
export function updated(ids:string | string[],code:string):Promise<void>{
    
    
  const requestIds = Array.isArray(ids) ? ids : [ids]
  // 指定该接口的请求格式
  const headers = {
    
    'Content-Type': 'application/x-www-form-urlencoded'}
  return request.put(`${
      
      BASE_URL}/tradeClause`,headers,{
    
    params:{
    
    
    ids:requestIds,code
  }},)
}

校验结果: 指定Content-Type类型后,接口在页面请求成功

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/m0_50298323/article/details/132301559