(전) 프 록 시 오류: localhost: 8080 에서 localhost: 3000 으로 프 록 시 requestXXX 를 요청 할 수 없습니다 (ENOTFO

문제 설명: node 서 비 스 는 localhost: 3000 포트 에서 실행 되 기 때문에 vue 는 localhost: 8080 포트 에서 실행 되 고 서로 다른 포트 에 크로스 필드 문제 가 존재 합 니 다.그래서 저 는 역방향 대리 처 리 를 사 용 했 습 니 다.vue. config. js 에서:
proxy:{
    '/api2':{
        target:'http://localhost:3000', 
        changeOrigin:true, 
    }
}

저 는 vue - cli 3 이기 때문에 vue. config. js 입 니 다. vue - cli 2 라면 config 폴 더 에 있 는 index. js 안에 있 습 니 다.
axios 를 보 낸 후,
toLogin(){
    this.axios.post('/api2/users/login',{
        username:this.username,
        password:this.password
    }).then((res)=>{
        console.log(res);
    }).catch((res) => {
        alert("  :" + res);
    });
}

이런 문제 가 생 겼 다.
네트워크 에서 봐 요.
Proxy error: Could not proxy request / api 2 / users / login from localhost: 8080 to localhost: 3000 (ENOTFOUND). 1 해결: 1. 전단 부분의 프로젝트 디 렉 터 리 에서 프로필 package. json 을 찾 습 니 다. 원래 이 렇 습 니 다.
"scripts": {
    "serve": "vue-cli-service serve",
    "build": "vue-cli-service build"
},

start 와 server 를 추가 합 니 다:
"scripts": {
    "serve": "vue-cli-service serve",
    "build": "vue-cli-service build",
    "start": "node index.js",
    "server": "nodemon index.js --ignore client"
},

문제 가 해결 되 었 다.
이 문 제 를 일 으 키 는 것 도 경로 의 문제 일 수 있다.
proxy 프 록 시 부분:
proxy:{
    '/api2':{   //1
        target:'http://localhost:3000',   //2
        changeOrigin:true, 
    }
}

1. 이 경 로 는 2. 여 기 는 mac 와 windows 에 쓰 는 방법 이 다 릅 니 다 windows:
"target": "localhost:3000"

mac:
"target": "http://127.0.0.1:3000"

axios 부분 보 내기:
this.axios.post('/api2/users/login'

/ api 2 여기 도 잘 맞 춰 야 돼 요.
원본 링크:https://blog.csdn.net/reagan_/article/details/97498160

좋은 웹페이지 즐겨찾기