>웹 프론트엔드 >JS 튜토리얼 >도메인 전체에서 express+http-proxy-middleware를 사용하는 단계에 대한 자세한 설명

도메인 전체에서 express+http-proxy-middleware를 사용하는 단계에 대한 자세한 설명

php中世界最好的语言
php中世界最好的语言원래의
2018-06-01 09:47:533216검색

이번에는 노드의 도메인 간 express+http-proxy-middleware 사용 단계에 대해 자세히 설명하겠습니다. 도메인 간 노드에서 express+http-proxy-middleware 사용 시 주의 사항은 무엇입니까? 사례를 살펴보겠습니다.

노드 프록시 전달을 사용하는 이유는 무엇인가요?

프론트엔드와 백엔드 분리를 이루고자 하는데, 프론트엔드가 자체 컴퓨터에 Tomcat을 설치하지 않고 이때 노드로 서버를 구축한 후 요청을 전달합니다. 예를 들어, 로컬 호스트는 localhost:3000이고 Ajax 데이터 상호 작용을 수행하려면 http://www.example.com을 방문해야 합니다(물론 개발 프로세스 중에는 백엔드 Tomcat의 주소여야 합니다).

프로젝트 만들기

npm init

모듈 설치

npm install express connect-timeout http-proxy-middleware --save-dev

js 파일 만들기

<!--proxy-server.js-->
const express = require('express');
const timeout = require('connect-timeout');
const proxy = require('http-proxy-middleware');
const app = express();
// 超时时间
const TIME_OUT = 30 * 1e3;
// 设置端口
app.set('port', '80');
// 设置超时 返回超时响应
app.use(timeout(TIME_OUT));
app.use((req, res, next) => {
 if (!req.timedout) next();
});
proxyOption = {
 target: 'http://localhost:8080',
 pathRewrite: {
    '^/api/' : '/' // 重写请求,api/解析为/
  },
  changeOrigoin:true
};
// 静态资源路径
app.use('/', express.static('src/page'));
// 反向代理
app.use('/api/*', proxy(proxyOption));
// 监听端口
app.listen(app.get('port'), () => {
 console.log(`server running @${app.get('port')}`);
});

이 기사의 사례를 읽으신 후 방법을 마스터하셨다고 생각합니다. 더 흥미로운 정보를 보려면 PHP의 다른 관련 기사에 주목하세요. 중국사이트!

추천 도서:

WeChat 애플릿에서 인증 코드 비밀번호 입력 상자 기능을 개발하는 방법

webpack3.0을 사용하여 webpack-dev-server를 구성하는 방법

위 내용은 도메인 전체에서 express+http-proxy-middleware를 사용하는 단계에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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