vue baseurl 环境变量,vue base_url

  vue baseurl 环境变量,vue base_url

  这篇文章主要介绍了某视频剪辑软件跨域处理方式(vue项目中基础地址设置问题),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

  

目录

   vue跨域处理(baseUrl设置问题)一、方法一二、方法二三、方法三某视频剪辑软件请求不同的域名,baseURL配置

  

vue跨域处理(baseUrl设置问题)

  

一、方法一

  在公用文件common.js中设置基础地址

  导出变量基本URL=进程。环境。node _ ENV=== production ?窗户。g . API URL:"/API "

  该方法的优点:在项目打包时,静态下面的文件是不会被工具处理的,所以可以通过改变静电下配置文件中的值,更改服务器地址。

  在主页。射流研究…中设置全局的爱可信配置

  从" axios "导入爱可信

  从" @/assets/js/common.js "导入{baseUrl}

  axios.defaults.baseURL=baseUrl

  在api_message.js中声名调用接口的方法

  从" qs "导入全国工业产品生产许可证

  导出函数messagelist (params={}) {

  返回axios.post(/event/list.do ,qs.stringify(params))

  }

  注意:此处引入全国工业产品生产许可证的原因

  爱可信默认是数据格式提交,确认后台是否做了对应的支持;若是只能接受传统的表单序列化,就需要自己写一个转义的方法,或者用全国工业产品生产许可证依赖。

  组件中调用

  从" @/assets/js/api_message.js "导入{邮件列表}

  导出默认值{

  名称:商店列表,

  组件:{ Item },

  data() {

  返回{

  列表:[]

  }

  },

  方法:{

  getList() {

  让列表数据={

  极限:8,

  偏移量:0,

  状态类型:这个。状态类型,

  条件:这个条件

  }

  消息列表(列表数据).然后(响应={

  if (response.data.length 0) {

  this.list=response.data

  }

  }).接住(错误={

  console.debug(错误)

  })

  }

  }

  }

  

二、方法二

  开发环境:

  生产环境:

  在单个射流研究…中声名接口

  从" axios "导入爱可信

  从" qs "导入全国工业产品生产许可证

  const instance=axios.create({

  baseURL: baseUrl

  })

  导出函数登录(params={}) {

  返回实例。post(/duty/log in ,qs.stringify(params))

  }

  注意:在有的编辑器中,会报基础地址未声名,但是不影响使用

  

三、方法三

  开发环境

  生产环境

  在文件中使用

  从" axios "导入爱可信

  从" qs "导入全国工业产品生产许可证

  const instance=axios.create({

  baseURL: process.env.API

  })

  

vue请求不同的域名,baseURL配置

  1、index.js

  proxyTable: { //解决跨域问题

  /api:{ //设置第一代理

  目标:"http://192.168.105.42:9090",

  //secure:false,//如果是安全超文本传输协议接口,需要配置这个参数

  changeOrigin: true,//如果接口跨域需要配置这个参数

  路径重写:{

  ^/api: /

  }

  },

  /navy:{ //设置第二个代理

  目标:"http://192.168.105.42:9095",

  更改来源:真的,

  路径重写:{

  ^/navy: /

  }

  },

  },

  2、主网站

  axios。默认值。基本m1 URL=/API ;

  axios。默认值。basem 2 URL=/navy ;

  //对得到请求传递过来的参数处理

  函数paramsToUrl(url,params) {

  如果(!参数)返回全球资源定位器(Uniform Resource Locator)

  对于(参数中的变量键){

  if (params[key] params[key]!=未定义){

  if (url.indexOf(?))) !=-1) {

  url= key = params[key]

  }否则{

  url=? key = params[key]

  }

  }

  }

  返回全球资源定位器(Uniform Resource Locator)

  }

  函数需要数据(网址,参数,类型,项目){

  如果(!网址)返回错误的

  开关(项目){

  案例《M1》:

  URL=axios。默认值。基本m1 URL URL

  打破;

  案例《M2》:

  URL=axios。默认值。basem 2 URL URL

  打破;

  默认值:

  URL=axios。默认值。basem 4 URL URL

  }

  if(type===get){

  url=paramsToUrl(url,params)

  返回新承诺((解决,拒绝)={

  Axios.get(url,params).然后(res={

  解析(结果数据)

  }).接住(错误={

  拒绝(错误)

  })

  })

  }否则{

  返回新承诺((解决,拒绝)={

  Axios.post(url,params).然后(res={

  解析(结果数据)

  }).接住(错误={

  拒绝(错误)

  })

  })

  }

  }

  //-接口一的请求数据方法互联网协议(互联网协议)地址为:http://192.168.105.42:9090调该方法

  vue。原型。请求m1服务=函数(URL,参数,类型){

  return requireData.call(this,url,params,type, M1 )

  }

  //-接口2的请求数据方法互联网协议(互联网协议)地址为:http://192.168.105.42:9095调该方法

  vue。原型。reqm 2服务=函数(URL,参数,类型){

  return requireData.call(this,url,params,type, M2 )

  }

  3、mine.vue

  这个。请求m1服务(/bsApi/Home/adduser feedback ,params).然后(

  res={

  if(res.status==200){

  _这个. toast.success({

  消息: 提交成功,

  禁止点击:真,

  持续时间:1000

  })

  }

  }

  );

  以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: