-
[ NodeJS / http ] response.writeHead()Node.js/모듈 2023. 3. 18. 10:32반응형
writeHead는 http response의 header를 설정하기 위한 http 모듈의 메서드이며 두 개의 인자를 받습니다.
response.writeHead(statusCode, headers)
- statusCode : http response의 상태코드를 특정합니다. 서버로부터 성공적인 응답을 받은경우 200을 할당하고, Not found 오류의 경우 404를 할당합니다.
- headers : http response header를 나타내는 key-value 쌍이 담긴 객체입니다. 인자를 전달하지 않을 경우 기본값으로 설정됩니다.
writeHead 예시
res.writeHead(200, { 'Content-Type': 'text/html', 'Cache-Control': 'no-cache' });
headers
- Content-Type : response body의 MIME을 특정합니다.
- Content-Length : response body의 길이를 특정합니다.(bytes)
- Cache-Control : 클라이언트가 response를 어떻게 캐싱할지 특정합니다.
- Location : 클라이언트가 리디릭션하기 위해 지정해야하는 url을 특정하기 위해 사용됩니다.
- Set-Cookie : 클라이언트의 브라우저에서 쿠키를 설정하기 위해 사용됩니다.
- Access-Control-Allow-Origin : This header specifies the allowed origins for cross-origin resource sharing (CORS)
writeHead에서 header를 특정함으로써 얻는 이득
- 사용자 경험 개선 : Content-Type 헤더를 text/html로 설정하면 브라우저가 응답을 HTML 문서로 해석하도록 지시하여 브라우저가 페이지를 제대로 렌더링할 수 있습니다.
- 성능 향상 : Cache-Control 헤더를 설정하면 브라우저가 응답을 캐시하도록 지시하여 서버에 대한 요청 수를 줄이고 페이지 로드 시간을 개선할 수 있습니다.
- SET 개선 : 웹사이트의 검색 엔진 최적화(SEO)를 개선하는 데에도 도움이 됩니다. X-Robots-Tag 헤더를 설정하면 검색 엔진 크롤러가 웹사이트의 특정 페이지를 색인화하거나 색인화하지 않도록 지시할 수 있습니다.
- 보안성 향상 : X-Frame-Options 헤더를 DENY로 설정하면 웹 페이지가 다른 웹사이트의 iframe에 포함되지 않도록 하여 클릭재킹 공격을 방지할 수 있습니다.
반응형'Node.js > 모듈' 카테고리의 다른 글
[ NodeJS / PM2 ] PM2를 이용한 node.js 실행 (1) 2023.03.17