728x90
반응형
질문 : Express에서 전체 URL을 얻는 방법은 무엇입니까?
내 샘플 URL이
그리고 나는 다음 경로가 있다고 말합니다
app.get('/one/two', function (req, res) {
var url = req.url;
}
url
의 값은 /one/two
입니다.
Express 에서 전체 URL 을 얻으려면 어떻게합니까? 예를 들어 위의 경우 http://example.com/one/two
를 받고 싶습니다.
답변
req.protocol
로 사용할 수 있습니다. 여기에 문서req.get('X-Forwarded-Protocol')
이 설정되어 있고 값이https
인 경우가 아니라면http
라고 가정 할 수 있습니다.
- 호스트는 Gopal이 표시
req.get('host')
app.listen
만, 알 필요가 있었다면 서버 시작시 app.listen에 전달한 것이기 때문에 애플리케이션 상태에 있어야합니다. 그러나 비표준 포트에서 로컬 개발의 경우 Chrome은 호스트 헤더에 포트를 포함하는 것처럼req.get('host')
는 예를 들어localhost:3000
반환합니다. 따라서 최소한 표준 포트에있는 프로덕션 사이트의 경우 (역방향 프록시없이) 익스프레스 앱을 직접 탐색하는 경우host
헤더가 URL의 포트와 관련하여 올바른 작업을 수행하는 것 같습니다.- 경로는
req.originalUrl
(@pgrassant에게 감사드립니다). 여기에는 쿼리 문자열이 포함됩니다. req.url 및 req.originalUrl에있는 문서 . URL로 수행하려는 작업에 따라originalUrl
req.url
과 비교할 때 올바른 값일 수도 있고 아닐 수도 있습니다.
이들을 모두 결합하여 절대 URL을 재구성하십시오.
var fullUrl = req.protocol + '://' + req.get('host') + req.originalUrl;
출처 : https://stackoverflow.com/questions/10183291/how-to-get-the-full-url-in-express
728x90
반응형
'개발관련 > other' 카테고리의 다른 글
개행 문자 \ r \ n, \ r 및 \ n의 차이점 (0) | 2021.09.10 |
---|---|
JSON 문자열의 이진 데이터. Base64보다 나은 것 (0) | 2021.09.10 |
JSON는 객체에서 배열 마지막 항목에 후행 쉼표를 허락하는가? (0) | 2021.09.09 |
Mac에서 Android Studio를 완전히 제거하는 방법 (0) | 2021.09.08 |
AES 암호화 모드 (CBC ECB CTR OCB CFB)를 선택하는 방법 (0) | 2021.09.03 |