美文网首页
后端要求get、put、delete请求通过body传值问题

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

作者: 江火渔枫 | 来源:发表于2024-01-11 09:27 被阅读0次

原因分析

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

  • url长度限制
  • 可传复制对象

解决思路

前端发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

相关文章

网友评论

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

      本文链接:https://www.haomeiwen.com/subject/ejltodtx.html