【问题标题】:Vue application request wrong Axios baseURLVue应用请求错误的axios baseURL
【发布时间】:2019-11-12 20:01:21
【问题描述】:

我尝试从 .env.local 创建一个 baseURL,但在请求中我得到了 http://localhost:8083/Contracts/users insted of https://api.EXAMPLE.dev/api/users

我使用 npm run serve -> http://localhost:8083

有什么建议吗?

.env.locale

VUE_APP_ENDPOINT="https://api.EXAMPLE.dev/api"

ma​​in.js

import axios from "axios";

axios.defaults.baseURL = process.env.VUE_APP_ENDPOINT;

Component.vue

  created: function() {
    axios
      .get("/users")
      .then(response => {
        this.items = response.data;
      })
      .catch(error => {
        console.log(error);
      });
  },

【问题讨论】:

  • 当你定义你的axios.defaults.baseURL 时,你的process.env.VUE_APP_ENDPOINT 是否有可能是undefined?你试过检查吗?
  • 是的,它不知道 process.env.VUE_APP_ENDPOINT 是怎样的,但我是从 .env.local 定义的

标签: vue.js axios


【解决方案1】:

试着写

axios.defaults.baseURL = process.env.VUE_APP_ENDPOINT || "https://api.EXAMPLE.dev/api"

对于 Component.vue 文件

  created: function() {
    axios({
         url: "/users"
      })
      .then(response => {
        this.items = response.data;
      })
      .catch(error => {
        console.log(error);
      });
  }

检查这是否有效。这可能是 process.env 没有给出正确值的原因。

【讨论】:

  • 它有效,但我想从 .env.local 插入 url。这就像 process.env 是空的
  • 据我所知,.env.local 不应在引号 (" ") 中包含 url。尝试删除它,看看它是否有效。
  • 不是来自“”。我会做更多的研究。
  • 我重新启动应用程序。 npm run serve,无论如何它都可以工作,感谢您的时间!
【解决方案2】:

代码没问题,重启后就可以了。

npm run serve

【讨论】:

    猜你喜欢
    • 2018-12-23
    • 2021-03-05
    • 1970-01-01
    • 2017-09-14
    • 2019-09-29
    • 1970-01-01
    • 1970-01-01
    • 2020-02-14
    • 2018-03-01
    相关资源
    最近更新 更多