VUE3.0을 빠르게 시작하는 방법: 학습 시작
오늘 Node
배우면서 Node/http
의 setHeader 와 writeHead가 매우 유사하다는 것을 알았습니다. 둘 다 응답 헤더를 설정할 수 있습니다.
매개변수
response.setHeader(name, value)코드
http.ServerResponse
응답 객체를 반환하고
응답 헤더에 대한 단일 속성을 설정합니다.
속성
TypeError
발생합니다.예
response.setHeader('Content-Type', 'text/html')
응답. setHeader('Set-Cookie', ['type=ninja', '언어=javascript'])는
속성을 반복적으로 설정합니다.
// content-type = text/html1을 반환합니다. response.setHeader('Content-Type', 'text/html') response.setHeader('Content-Type', 'text/html1')
매개변수
response.writeHead(statusCode, [statusMessage], [headers])
statusCode http 상태 코드
statusMessage 상태 메시지(선택 사항)
헤더 |
return http.ServerResponse
응답 객체 반환
이 함수는
setHeader
setHeader는 하나만 설정할 수 있으며
,
를 포함하는 속성 필드 이름 또는 값을 설정하기
response.end()
호출해야 합니다
.
문자로 인해 TypeError
발생합니다.
예입니다
. ServerResponse 개체이므로 체인 호출을 할 수 있습니다.
const body = 'hello world'; 응답 .writeHead(200, { '콘텐츠 길이': Buffer.byteLength(body), '콘텐츠 유형': '텍스트/일반' }) .end(body);
여기서 Content-Length는 문자가 아닌 바이트 단위입니다. Buffer.byteLength()는 텍스트의 길이를 결정하는 데 사용됩니다.
Nodejs는 Content-Length가 전송된 텍스트의 길이와 일치하는지 확인하지 않습니다.
// Return content-type = text/plain const 서버 = http.createServer((req, res) => { res.setHeader('Content-Type', 'text/html'); res.setHeader('X-Foo', 'bar'); res.writeHead(200, { 'Content-Type': 'text/plain' }); res.end('확인'); });
writeHead
setHeader
보다 우선순위가 높으며 writeHead는 한 번만 호출할 수 있으므로 호출 시 먼저 어떤 헤더가 자주 변경되지 않는지 고려한 다음 writeHead
setHeader
를 설정합니다
writeHead
merge에 전달합니다.
이 메서드가 호출되고 response.setHeader()
호출되지 않은 경우) 제공된 헤더 값은 네트워크 채널에 직접 기록되며 내부적으로 캐시되지 않습니다. 헤더의 response.getHeader()
)가 예상한 결과를 생성하지 않습니다. 헤더를 점진적으로 채워야 하고 나중에 잠재적으로 검색 및 수정되어야 하는 경우 대신 response.setHeader()
사용하십시오.
setHeader는 헤더를 하나씩만 설정할 수 있고 writeHead는
한 번에 많은 setHeader를 설정할 수 있으며 반복적으로 호출할 수 있습니다. writeHead는 한 번만 호출할 수 있으며
setHeader와 writeHead는 동시에 writeHead에 병합됩니다. writeHead는 우선순위가 높습니다.
writeHead는 상태 코드 및 상태 정보를 설정할 수 있으며, setHeader는 설정할 수 없으며 헤더만 설정할 수 있습니다.