이번에는 Express에서 HTTP를 HTTPS로 보내는 방법과 주의사항에 대해 알려드리겠습니다.
로컬에서 테스트해보니 HTTP는 포트 3000, HTTPS는 443을 사용했습니다.
HTTP와 HTTPS를 동시에 모니터링
이전 글 Express 로컬 테스트 HTTPS 참조
모든 GET 요청 전달
httpApp.get("*", (req, res, next) => { let host = req.headers.host; host = host.replace(/\:\d+$/, ''); // Remove port number res.redirect(`https://${host}${req.path}`); });
에 해당 그런 다음 https 링크가 리디렉션됩니다. 이때 브라우저는 302(MOVED_TEMPORARILY) 상태 코드를 수신하고 HTTPS로 리디렉션됩니다.
모든 요청 전달
httpApp.all("*", (req, res, next) => { let host = req.headers.host; host = host.replace(/\:\d+$/, ''); // Remove port number res.redirect(307, `https://${host}${req.path}`); });
두 가지 수정 사항이 있습니다.
httpApp.get이 httpApp.all로 변경
리디렉션 시 첫 번째 매개변수 307(TEMPORARY_REDIRECT)이 추가되었습니다.
첫 번째 수정만 추가하면 리디렉션 중에 메서드가 유지되지 않아 POST 요청이 다음과 같이 발생합니다. GET 요청이 됩니다. 두 번째 수정 사항을 추가하세요.
이 기사의 사례를 읽은 후 방법을 마스터했다고 생각합니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트의 다른 관련 기사를 주목하세요.
추천 도서:
프로젝트에서 Angularjs 사용자 정의 지침을 사용하는 방법
위 내용은 Express에서 HTTP를 HTTPS로 연결하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!