Post请求一直500

请求报500,大多是参数不对。检查了前端的参数无误,多数是后台没有接收到。

至于为什么后台没有接收到,是因为,请求头和请求体格式不同

最常见的有下面这几种:一定要和后台接口的小哥沟通好格式。

application/x-www-form-urlencoded

multipart/form-data

application/json

另外还有一个很重要的点,就是下面这个qs库,作用是将url中的参数转为对象;将对象转为url参数形式。很多时候500的错,就是参数需要qs转一下就好了

import qs  from 'qs';

newOptions.data = qs.stringify(newOptions.data);

service.interceptors.request.use(

  (config) => {

    let Authorization = sessionStorage.getItem("Authorization");

    config.headers.Authorization = Authorization;

    if (

      config.method === "post" && config.headers["Content-Type"] === "application/x-www-form-urlencoded"

    ) {

      config.data = qs.stringify(config.data);

    }

    return config;

  },

  (error) => {

    return Promise.reject(error);

  }

);

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐