美文网首页vue
vue开发中统一给接口头部添加Service-Type遇到的小坑

vue开发中统一给接口头部添加Service-Type遇到的小坑

作者: 小蜜蜂_1d30 | 来源:发表于2019-11-06 12:36 被阅读0次

    这两天项目需要,需要给所有项目中添加灰度发布,说白了,就是在每个请求接口的头部添加Service-Type字段,同事在忙着开发调试,正好我手里没啥事,就自己全做了,前几个项目照着文档改一下,本地调试,环境测试都成功了,到最后一个项目的时候,本地调试好好的,可是一上环境怎么编写都出错,废话不多说,直接上图(左边本地调试,右边环境)

    折腾了好一会儿,才想起来看代码,之前的那几个vue项目都是通过npm打包,在main.js里面配置,代码如下

    // 灰度测试 axios全局添加请求头

    let setHttpHeader = {'Service-Type' : 'grey'};

    Axios.interceptors.request.use(function (config) {

      if (setHttpHeader) {

        for ( let headerKey in setHttpHeader ) {

          config.headers[headerKey] = setHttpHeader[headerKey];

        }

      }

      return config;

    }, function (error) {

        return Promise.reject(error);

    })

    这个项目比较简陋,没有main.js 看了一下代码时在config.js里面引用的ajax,所以在这里配置了,没有多想就按着原来的方式把代码放上去,如下,本地调试是好的,可是一上环境打开F12查看代码就能看到 let setHttpHeader = null; 

    试了好多种方法,最后突然想到,会不会在这个文件中他只认WebConfig下面定义的属性和值,于是将代码改成如下格式、

    这次再将代码打到环境上,竟然好了,没有再报错,打开控制台,查询请求接口头部信息,出现来第一张图中左边的效果

    致此,结束,当然,如果上面将setHttpHeader放在Webconfig中定义,下面的方法使用的时候要注意哦,最后附上修改的完整代码

    相关文章

      网友评论

        本文标题:vue开发中统一给接口头部添加Service-Type遇到的小坑

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