const instance = axios.create({
baseURL: "http://localhost:3000/",
})
//1.
axios.post("http://localhost:3000/signup");
//2.
instance.post("signup");
api 공통화 및 인스턴스 생성을 통해 코드를 간결하게 작성할 수 있다.
axios.post()의 첫번째 인자로 url을 전달해야 하는데, baseURL을 설정해 주었기때문에, signup만 인자로 넘기게 되면 url을 "http://localhost:3000/signup"로 작성한 것과 같이 동작한다.
✨✨✨ 서버 API 엔드포인트 주소를 환경변수로 관리하는 방법
: 프로젝트의 루트 폴더에 .env 파일 생성
: .env 파일은 키=값 형태로 변수를 저장할 수 있는 파일.
✨✨✨ env 파일 생성하고, api/index.js 파일에서 사용하기
//.env
VUE_APP_API_URL=http://localhost:3000
//api/index.js
const instance = axios.create({
baseURL: process.env.VUE_APP_API_URL,
})
env파일안의 변수 앞에 VUE_APP이라는 접두사가 붙은 변수는
process.env.VUE_APP_API_URL
과 같이 다른 파일에서 접근할 수 있다. ( vue-cli3 버전 부터 적용! )
//.env.production
VUE_APP_API_URL=https://vue-til.com/
배포용 환경 변수 파일, 배포 시에 api url 주소를 환경변수로 설정했다.
//.env.development
VUE_APP_API_URL=http://localhost:3000
개발용 환경 변수 파일
//.env
VUE_APP_API_URL=https://vue-til.com/
공통 env 파일, 기본적으로 .env.development나 .env.production이 있다면, 이 두개의 파일이 우선순위를 가지지만, 이 두개의 파일이 없을 경우 공통 .env파일의 환경변수가 적용된다.