咏竹莉
where there is a will,there is a way

开发环境跨域请求

1. 在vue.config.js 中配置代理

  // 配置 webpack-dev-server 行为。
    devServer: {
        // open: process.platform === 'darwin',
        open: process.env.NODE_ENV === "development",
        host: '0.0.0.0',  // 注意这个跟localhost
        port: 8080,
        https: false,
        hotOnly: true,
        // 查阅 https://github.com/vuejs/vue-doc-zh-cn/vue-cli/cli-service.md#配置代理
        proxy: {
          '/': {
            // target: process.env.VUE_APP_URL, //对应自己的接口
            target: 'http://39.103.134.227:32497', //对应自己的接口 注意开发环境的本地代理或者测试环境的代理,在部署到正式上时,一定要换成线上的IP地址,不然,数据拿不到哦
            changeOrigin: true,
            ws: false,
            // pathRewrite: {
            //     '^/api': '',

            // }
          }
        }, // string | Object
        before: app => {}
    },

 

2. vue中数据请求

sigin() {
      try {
        return new Promise((reslove) => {
          let _t = this;
          if (_t.isDefaultData == false) {
            // 登录接口请求
            _t.$axios
              .post(
                "/base_user/xxx/xxx/signin",
                _t.params // 已在公共axios序列化
              )
              .then((res) => {
                if (res.status === 200) {
                  if (res.data.ErrorCode === 0) {
                    // 保存token
                    // let token = {
                    //   AccessToken: res.data.Data.access_token,
                    // };
                    // 存儲token
                    console.log("登录中的" + this.getFromAndroidProject);
                    console.log(
                      "登录中的" + typeof this.getFromAndroidProject.isInitText
                    );
                    console.log(
                      "登录中的" +
                        this.getFromAndroidProject.projectInfo.project_id
                    );
                    localStorage.setItem(
                      "AccessToken",
                      res.data.Data.access_token
                    );
                    // 存储是否初始化信息
                    // localStorage.setItem('getFromAndroidProject', JSON.stringify(this.getFromAndroidProject))
                    // 是否初始化过 存储到localStorage中

                    // localStorage.setItem('isInitText', this.getFromAndroidProject.isInitText)
                    this.$store.commit(
                      "SYSTEMISINIT",
                      this.getFromAndroidProject.isInitText
                    );
                    //登录成功判断是否初始化过 如果没初始化过, 进入选择项目选择空间
                    console.log(
                      "登录中的" + this.getFromAndroidProject.isInitText
                    );
                    reslove(res);
                  } else {
                    _t.$message.error(res.data.Message);
                    // 验证码过期 刷新验证码
                    _t.getCodeImg();
                  }
                }
              })
              .catch(function () {
                console.log("登录失败");
              });
          }
        });
      } catch (err) {
        console.log(err);
      }
    },

 

3. 这样请求就可以啦

posted on 2021-08-26 17:52  咏竹莉  阅读(73)  评论(0编辑  收藏  举报