vue 프로젝트 를 사용 하여 여러 에이전트 의 주의 점 을 설정 합 니 다.
devServer: {
port: 8081,
proxy: {
'/api/action': {
target: 'http://192.168.200.106:81',
changeOrigin: true,
ws: true,
secure: false
}
}
},
```
이 설정 에서 다음 두 가 지 를 주의해 야 합 니 다.인터페이스 주소 가 겹 치 는 주소 가 있 을 때 일치 도가 낮은 것 을 뒤에 놓 습 니 다.
예 를 들 면:
만약 우리 가 아래 처럼 쓴다 면:
proxy: {
'/': {
target: 'http://192.191.1.1',
changeOrigin: true,
ws: true,
secure: false
},
'/api': {
target: 'http://192.191.1.2',
changeOrigin: true,
ws: true,
secure: false
},
'/api/action': {
target: 'http://192.191.1.3',
changeOrigin: true,
ws: true,
secure: false
}
}
그러면 모든/,/api 와/api/action 의 요청 은 192.191.1.1 위로 대 리 됩 니 다.이 유 는 이 일치 가 실제 적 으로 정규 일치 하 는 과정 이기 때 문 입 니 다.우리 가/api 를 요청 할 때 먼저 설정 항목 의 첫 번 째 를 읽 었 습 니 다.설정 에 있 는/api 를 가 져 와 서 요청 에 있 는/api 에 설정 항목 이 포함 되 어 있 는 것 을 발 견 했 습 니 다.일치 하 는 것 은 192.191.1.1 위로 요청 을 대 리 했 습 니 다./api/action 에 대한 일치 도 마찬가지 입 니 다.
즉,이 일치 규칙 은 설정 항목 의 주 소 를 요청 한 주소 와 일치 시 키 는 것 입 니 다.요청 한 주소 에 설정 의 주 소 를 포함 하면 일치 하 는 데 성공 합 니 다.그렇지 않 으 면 다음 설정 항목 을 가지 고 계속 일치 합 니 다.
따라서 설정 에 있 는 주 소 는 요청 주소 와 일치 하 는 문자 가 적 을 수록 일치 도가 낮 습 니 다.이전 예 에서 설정 한 주소(/)는 요청 주소(/api)와 한 글자 만 일치 하기 때문에 일치 도가 낮 습 니 다.
그래서 우리 의 정확 한 문법 은 다음 과 같다.
proxy: {
'/api/action': {
target: 'http://192.191.1.3',
changeOrigin: true,
ws: true,
secure: false
},
'/api': {
target: 'http://192.191.1.2',
changeOrigin: true,
ws: true,
secure: false
},
'/': {
target: 'http://192.191.1.1',
changeOrigin: true,
ws: true,
secure: false
}
}
이렇게 세 개의 주소 로 가 는 요청 은 모두 해당 주소 로 정확하게 대리 할 수 있다.여러 주소 에이전트 가 같은 target 일 때 통합 할 수 있 습 니 다.
실제 응용 에서 백 엔 드 는 마이크로 서비스 모델 로 개발 되 기 때문에 개발 단계 에서 우 리 는 서로 다른 서 비 스 를 서로 다른 주소 로 대리 할 수 있 습 니 다.서비스 가 많 을 때 우리 대리 의 수량 도 많 습 니 다.
proxy: {
'/api/action': {
target: 'http://192.191.1.3',
changeOrigin: true,
ws: true,
secure: false
},
'/api/action2': {
target: 'http://192.191.1.4',
changeOrigin: true,
ws: true,
secure: false
},
'/api/action3': {
target: 'http://192.191.1.3',
changeOrigin: true,
ws: true,
secure: false
},
'/api/action4': {
target: 'http://192.191.1.4',
changeOrigin: true,
ws: true,
secure: false
},
'/api/action5': {
target: 'http://192.191.1.5',
changeOrigin: true,
ws: true,
secure: false
},
'/api/action6': {
target: 'http://192.191.1.6',
changeOrigin: true,
ws: true,
secure: false
},
'/api/action7': {
target: 'http://192.191.1.5',
changeOrigin: true,
ws: true,
secure: false
},
'/api/action8': {
target: 'http://192.191.1.6',
changeOrigin: true,
ws: true,
secure: false
},
'/api/action9': {
target: 'http://192.191.1.7',
changeOrigin: true,
ws: true,
secure: false
},
'/api': {
target: 'http://192.191.1.2',
changeOrigin: true,
ws: true,
secure: false
},
'/': {
target: 'http://192.191.1.1',
changeOrigin: true,
ws: true,
secure: false
},
}
설정 한 프 록 시 수량 이 10 개 를 넘 으 면 개발 환경 컴 파일 패키지 시 다음 과 같은 오 류 를 보고 합 니 다.오 류 를 해결 하고 코드 의 부 피 를 줄 이기 위해 우 리 는 같은 target 을 가 진 설정 항목 을 합병 할 수 있 습 니 다.앞에서 알 수 있 듯 이 여 기 는 정규 가 일치 하 는 과정 입 니 다.그러면 우 리 는 정규 문법 을 이용 하여 그들 을 합병 할 수 있 습 니 다.
proxy: {
'/api/action|/api/action3': {
target: 'http://192.191.1.3',
changeOrigin: true,
ws: true,
secure: false
},
'/api/action2|/api/action4'': {
target: 'http://192.191.1.4',
changeOrigin: true,
ws: true,
secure: false
},
'/api/action5|/api/action7': {
target: 'http://192.191.1.5',
changeOrigin: true,
ws: true,
secure: false
},
'/api/action6|/api/action8': {
target: 'http://192.191.1.6',
changeOrigin: true,
ws: true,
secure: false
},
'/api/action9': {
target: 'http://192.191.1.7',
changeOrigin: true,
ws: true,
secure: false
},
'/api': {
target: 'http://192.191.1.2',
changeOrigin: true,
ws: true,
secure: false
},
'/': {
target: 'http://192.191.1.1',
changeOrigin: true,
ws: true,
secure: false
},
}
물론 정식 배 치 를 할 때 는 백 엔 드 가 통일 대 리 를 해 야 한다.이상 은 개인 적 인 경험 이 므 로 여러분 에 게 참고 가 되 기 를 바 랍 니 다.여러분 들 도 저 희 를 많이 응원 해 주시 기 바 랍 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Fastapi websocket 및 vue 3(Composition API)1부: FastAPI virtualenv 만들기(선택 사항) FastAPI 및 필요한 모든 것을 다음과 같이 설치하십시오. 생성main.py 파일 및 실행 - 브라우저에서 이 링크 열기http://127.0.0.1:...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.