【问题标题】:Remove localhost:8080 from axios request url从 axios 请求 url 中删除 localhost:8080
【发布时间】:2021-08-24 05:30:07
【问题描述】:

我在向后端发出请求时遇到问题。 Axios 仍将 localhost 写为基本 url,然后添加后端 url。

GET http://localhost:8080/127.0.0.1:8000/api/projects 404(未找到)

我确实尝试了几件事。首先,我尝试更改vue-router 的基本网址。在env.development 中我写了一个VUE_APP_ROUTER_BASE_URL="/" 并将其添加到路由器配置中。

const router = new VueRouter({
    mode: 'history',
    base: process.env.VUE_APP_ROUTER_BASE_URL,
    routes
  })
  
export default router

但这并没有成功。然后我尝试像axios.defaults.baseUrl = "/" 一样直接更改axios baseUrl 但这也没有成功......我不确定,我错过了什么,还有其他想法如何在我向后端发出请求时重新排列baseUrl。

【问题讨论】:

  • 如果您正在执行此操作,请不要在帖子中提供完整的 url
  • 您在VUE_APP_ROUTER_BASE_URL 中有http:// 前缀吗?

标签: vue.js


【解决方案1】:

您应该在后端 url 的开头添加“/”, “/”删除新网址之前的所有内容 或者可能是 vue-cli 应用程序的问题,请尝试在您的生产和/或开发环境中设置 publicPath 或 baseUrl。

https://cli.vuejs.org/config/#publicpath

【讨论】:

    【解决方案2】:

    我遇到了同样的问题,所以我想出了基本的解决方案来制作满足所有要求的 URL,无论是开发和部署、API 调用以及推送到源代码控制等。

    Make Base URL at Frontend using Javascript (development, APIs and production)

    否则,您将通过将 localhost 置于开发中并在部署中删除 loalhost 并更改 API 端口来回退

    注意:它独立于框架,你可以在任何你喜欢的地方通过javascript使用它

    【讨论】:

      猜你喜欢
      • 2012-06-10
      • 2018-01-08
      • 1970-01-01
      • 1970-01-01
      • 2020-03-08
      • 2018-12-24
      • 2018-04-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多