zoukankan      html  css  js  c++  java
  • vue 项目中 任意切换 request url (axios baseUrl)

    最近重构了一个项目,其中一个需求是每次切换菜单要换请求url

    也尝试了其他方法,最终定为以下方案

    此方案中用到了vuex,下载安装就不一一赘述了…

    const service = axios.create({
      timeout: 5000,
    });
    // create中不设置baseUrl
    
    service.interceptors.request.use(
      (config) => {
        // 对返回的数据进行一些处理
        var data = config;
        if (data.method === "get") {
          data.url = encodeURI(data.url);
        }
        if (data.url.indexOf("?") < 0) {
          data.url = data.url + "?t=" + Date.parse(new Date());
        } else {
          data.url = data.url + "&t=" + Date.parse(new Date());
        }
        config.headers["Accept-Language"] =
        Cookies.get("language") === "zh" ? "zh-cn" : "en-us";
        config.headers["Cache-Control"] = "no-cache";
        config.headers["Authorization"] = getToken();
    
        config.url = store.state.host + "/" + config.url; 
        // 直接修改请求url更方便
      // host 可以设置一个默认url 
        config = data;
        return config;
      },
      (error) => {
        console.log(error); // for debug
        Promise.reject(error);
      }
    );

    由于我们的需求是每次切换菜单更换url,所以在切换菜单这个方法里修改你要换的url就可以了

    具体代码不做展示了,上面才是最重要的。

  • 相关阅读:
    EF-入门操作
    Razor 页面解说
    Razor_02 第一个应用程序+Model+EF 添加
    Razor_01 第一个应用程序
    LazyCoder修仙之路
    .NET高级特性-Emit(2.2)属性
    .NET高级特性-Emit(2.1)字段
    .NET高级特性-Emit(2)类的定义
    .NET高级特性-Emit(1)
    asp.net core高级应用:TagHelper+Form
  • 原文地址:https://www.cnblogs.com/WoAiZmm/p/15597009.html
Copyright © 2011-2022 走看看