后端要求get、put、delete请求通过body传值问题

2024-01-11  本文已影响0人  江火渔枫

原因分析

使用RESTful规范 获取数据多参数多的最好放body

解决思路

前端发post 后台按get 解析
前端是无法直接发通过body带参数的get请求的!!!
如果有办法请留言告知

重点: 解决办法

request.headers['X-HTTP-Method-Override'] = 'GET';
request.headers['X-HTTP-Method-Override'] = 'PUT';
request.headers['X-HTTP-Method-Override'] = 'DELETE';

在vue中 这句加在了请求拦截里面

export function getAlerts(data: ObjTy) {
  const param = {
    url: 'api/alerts',
    data,
    bfLoading: true,
    method: 'POST',
    isAlertErrorMsg: true,
    // isParams: true,
    isBodyData: true
  }
  return axiosReq(param)
}
//请求拦截  isBodyData是自定义参数 用于区分  post后台按get解析改造header
if (request.method === 'post' && request.isBodyData) {
      request.headers['X-HTTP-Method-Override'] = 'GET';
    }
image.png
上一篇 下一篇

猜你喜欢

热点阅读