logo

Express.js 요청 객체

Express.js 요청 및 응답 개체는 Express 애플리케이션에서 사용되는 콜백 함수의 매개변수입니다.

express.js 요청 객체는 HTTP 요청을 나타내며 요청 쿼리 문자열, 매개변수, 본문, HTTP 헤더 등에 대한 속성을 가지고 있습니다.

통사론:

 app.get('/', function (req, res) { // -- }) 

Express.js 요청 개체 속성

다음 표에서는 요청 개체와 관련된 일부 속성을 지정합니다.

색인 속성 설명
1. req.app 이는 미들웨어를 사용하는 Express 애플리케이션의 인스턴스에 대한 참조를 보유하는 데 사용됩니다.
2. req.baseurl 라우터 인스턴스가 마운트된 URL 경로를 지정합니다.
삼. 요청 본문 여기에는 요청 본문에 제출된 데이터의 키-값 쌍이 포함됩니다. 기본적으로는 정의되지 않으며 body-parser와 같은 본문 구문 분석 미들웨어를 사용할 때 채워집니다.
4. 쿠키 요청 쿠키 파서 미들웨어를 사용할 때 이 속성은 요청에 의해 전송된 쿠키를 포함하는 객체입니다.
5. req.fresh 요청이 '신선'함을 지정합니다. req.stale의 반대입니다.
6. req.호스트 이름 여기에는 'host' http 헤더의 호스트 이름이 포함됩니다.
7. req.ip 요청의 원격 IP 주소를 지정합니다.
8. req.ips 신뢰 프록시 설정이 true인 경우 이 속성에는 ?x-forwarded-for?에 지정된 IP 주소 배열이 포함됩니다. 요청 헤더.
9. req.originalurl 이 속성은 req.url과 매우 유사합니다. 그러나 원래 요청 URL을 유지하므로 내부 라우팅 목적으로 req.url을 자유롭게 다시 작성할 수 있습니다.
10. 필수 매개변수 명명된 경로 '매개변수'에 매핑된 속성을 포함하는 개체입니다. 예를 들어 /user/:name 경로가 있는 경우 'name' 속성을 req.params.name으로 사용할 수 있습니다. 이 객체의 기본값은 {}입니다.
열하나. 요청 경로 여기에는 요청 URL의 경로 부분이 포함됩니다.
12. 요청 프로토콜 TLS로 요청한 경우 요청 프로토콜 문자열 'http' 또는 'https'입니다.
13. 요청 쿼리 경로의 각 쿼리 문자열 매개 변수에 대한 속성을 포함하는 개체입니다.
14. 요청 경로 현재 일치하는 경로, 문자열입니다.
열 다섯. 보안이 필요함 TLS 연결이 설정된 경우 true인 부울입니다.
16. 서명된쿠키 요청 쿠키 파서 미들웨어를 사용할 때 이 속성에는 요청에 의해 전송된 서명되지 않은, 사용할 준비가 된 서명된 쿠키가 포함됩니다.
17. 요청 부실 요청이 'stale'인지 여부를 나타내며 req.fresh와 반대입니다.
18. req.하위 도메인 요청의 도메인 이름에 있는 하위 도메인 배열을 나타냅니다.
19. req.xhr 요청의 'x-requested-with' 헤더 필드가 'xmlhttprequest'인 경우 true인 부울 값(jQuery와 같은 클라이언트 라이브러리에서 요청이 발행되었음을 나타냄)

요청 객체 메소드

다음은 일반적으로 사용되는 요청 객체 메소드의 목록입니다.

req.accepts(유형)

이 메서드는 요청의 Accept HTTP 헤더 필드를 기반으로 지정된 콘텐츠 유형이 허용되는지 여부를 확인하는 데 사용됩니다.

예:

 req.accepts('html'); //=>?html? req.accepts('text/html'); // => ?text/html? 

req.get(필드)

이 메소드는 지정된 HTTP 요청 헤더 필드를 반환합니다.

예:

 req.get('Content-Type'); // => 'text/plain' req.get('content-type'); // => 'text/plain' req.get('Something'); // => undefined 

req.is(유형)

이 메소드는 수신 요청의 'Content-Type' HTTP 헤더 필드가 type 매개변수로 지정된 MIME 유형과 일치하는 경우 true를 반환합니다.

예:

 // With Content-Type: text/html; charset=utf-8 req.is('html'); req.is('text/html'); req.is('text/*'); // => true 

req.param(이름 [, defaultValue])

이 메소드는 존재하는 경우 param name 값을 가져오는 데 사용됩니다.

예:

 // ?name=sasha req.param('name') // => 'sasha' // POST name=sasha req.param('name') // => 'sasha' // /user/sasha for /user/:name req.param('name') // => 'sasha'