axios使用问题 base_url

代码结构是Express node + vue实现的一个管理系统,使用axios发送请求__

项目编译完成后是在把前端vue项目源码编译成静态文件放到服务器的express里。不是dev环境,是生产环境。

但是我在我的电脑通过浏览器访问的时候,发送的请求url还是localhost,导致请求发送到我的电脑上了,怎么才能让axios发到服务器上呢

connect1() {
      let obj = {"userName": 'admin', password: '123456'};
      console.log('click 1')
      axios.request({
        url: '/login',
        obj,
        method: 'post'
      }).then(ret => {
        console.log('login result ==> ', ret);
      })
    },
    connect2() {
      let obj = {"userName": 'admin', password: '123456'};
      console.log('click 2')
      postQue('/login', obj, s => {
        console.log('success ===> ', s)
      }, e => {
        console.log('failed ===> ', e)
      });
    }

connect1是用的axios,connect2是用ajax封装的

connect2就能正确发送到正确的地址

我分析是因为我的base_url配置的有问题

import axios from 'axios'

class HttpRequest {
  constructor (baseUrl = baseURL) {
    this.baseUrl = baseURL;
    this.queue = {}
  }
  getInsideConfig () {
    const config = {
      baseURL: this.baseUrl,
      headers: {
        "Content-Type": "application/json"
      }
    }
    return config
  }
  request (options) {
    const instance = axios.create()
    options = Object.assign(this.getInsideConfig(), options)
    this.interceptors(instance, options.url)
    return instance(options)
  }
}
export default HttpRequest

我觉得是我的哪里设置不对 导致的不对 请求哪位大神帮忙指点一下

1个回答

你设置过着吗?生产环境应该会跨域的proxyTable

cs_dingz
猿码-偶滴老嘎 我没设置proxyTable 我感觉生产环境不需要proxyTable吧 设置proxy不是为了联调方便么 我没用过不懂
一年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问