>  기사  >  웹 프론트엔드  >  vue.js에서 baseurl을 선택하는 방법

vue.js에서 baseurl을 선택하는 방법

亚连
亚连원래의
2018-06-04 09:52:553360검색

이 글에서는 vue.js가 코드 실행 환경에 따라 baseurl을 선택하는 방법을 주로 소개하고 참고하겠습니다.

공통 API 접두사를 구성하면 인터페이스 프록시 전달을 통해 로컬로 데이터를 더 잘 얻을 수 있거나 배포 중에 Nginx에서 역방향 프록시를 수행할 수 있습니다. 그러나 프로젝트에 파일 업로드가 필요한 많은 부분이 포함된 경우(파일 업로드는 Ajax를 사용하지 않습니다. method ), 더 나은 관리 인터페이스의 baseURL을 고려해야 합니다. 프로젝트에서 Ajax 요청은 axios를 사용합니다. 원본 코드는 다음과 같습니다

수정 전

// 创建axios实例、配置baseURL、超时时间
const service = axios.create({
 baseURL: '/development/api', // 从环境进程中根据运行环境获取的api的base_url
 timeout: 5000         // 请求超时时间
})
/* 保存分配角色 */
export function fetchSaveDisUser (params1) {
 return fetch({
  url: '/user/empower',
  method: 'post',
  params: params1,
  paramsSerializer: function (params) {
   return Qs.stringify(params, { arrayFormat: 'repeat' })
  }
 })
}

/* 上传文件URL 从运行环境process.env中读取API配置 */
export let uploadUrl = '/development/api/doi/analys/upload'

Optimization method

찾아보세요. 및 config/prod.env.js에서 다음과 같이 코드에 변수 API_BASEURL(이름 사용자 지정)을 추가합니다.

module.exports = {
 NODE_ENV: '"production"', // PS:不要复制、开发环境和生产环境有区别
 API_BASEURL: '"/development/api/"' // 需要自己添加的代码
}

그런 다음 baseURL을 사용해야 하는 API_BASEURL

로 바꿉니다.

// 创建axios实例、配置baseURL、超时时间
const service = axios.create({
 baseURL: process.env.API_BASEURL, // 从环境进程中根据运行环境获取的api的base_url
 timeout: 5000         // 请求超时时间
})
/* 保存分配角色 */
export function fetchSaveDisUser (params1) {
 return fetch({
  url: '/user/empower',
  method: 'post',
  params: params1,
  paramsSerializer: function (params) {
   return Qs.stringify(params, { arrayFormat: 'repeat' })
  }
 })
}

/* 上传文件URL 从运行环境process.env中读取API配置 */
export let uploadUrl = process.env.API_BASEURL + '/doi/analys/upload'

위 내용은 모두를 위해 제가 정리한 내용입니다. 앞으로 모든 사람에게 도움이 되기를 바랍니다.

관련 기사:

React 구성 요소에서 이를 사용하는 방법을 자세히 설명합니다.

Vue 구성 요소에서 TypeScript 메서드를 사용하는 방법(자세한 튜토리얼)

vue 구성 요소가 전달한 개체에 단방향 바인딩을 구현하는 방법은 무엇입니까?

위 내용은 vue.js에서 baseurl을 선택하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.