
Como começar rapidamente com VUE3.0: Entre no aprendizado.
Hoje, quando eu estava aprendendo Node descobri que setHeader e writeHead em Node/http são muito semelhantes. Ambos podem definir cabeçalhos de resposta.
Parâmetros
response.setHeader(nome, valor)Copiar código
http.ServerResponse retorna o objeto de respostae
define um único atributo para o cabeçalho de resposta.
Observe que
Definir
uma
TypeError seja lançado.'text/html')
response. setHeader('Set-Cookie', ['type=ninja', 'language=javascript']) define repetidamente um atributo
// retorna content-type = text/html1
resposta.setHeader('Tipo de conteúdo', 'texto/html')
resposta.setHeader('Tipo de conteúdo', 'texto/html1') 
parâmetro
resposta.writeHead (statusCode, [statusMessage], [cabeçalhos])
statusCode código de status http
statusMessage mensagem de status (opcional)
cabeçalhos objeto de atributo ou matriz (opcional)
retornar http.ServerResponse objeto de resposta de retorno |

A função
é a mesma setHeader
Observe
que várias propriedades podem ser definidas. setHeader só pode definir uma
e só pode ser chamada uma vez.
Ela deve ser chamada antes response.end()
definir o nome ou valor do campo de propriedade que contém inválido
caracteres farão com que TypeError seja lançado.
Exemplo
porque writeHead retorna É um objeto ServerResponse, podemos fazer chamadas em cadeia
const body = 'hello world';
resposta
.writeHead(200, {
'Comprimento do conteúdo': Buffer.byteLength (corpo),
'Tipo de conteúdo': 'texto/simples'
})
.end(body); Content-Length aqui está em bytes, não em caracteres. Buffer.byteLength() é usado para determinar o comprimento do texto.
Nodejs não verificará se Content-Length é consistente com o comprimento do texto transmitido
// Retorna content-type = text/plain.
servidor const = http.createServer((req, res) => {
res.setHeader('Tipo de conteúdo', 'texto/html');
res.setHeader('X-Foo', 'barra');
res.writeHead(200, { 'Tipo de conteúdo': 'texto/simples' });
res.end('ok');
}); writeHead tem uma prioridade mais alta que setHeader e writeHead só pode ser chamado uma vez, portanto, ao chamar, primeiro considere quais cabeçalhos não mudam com frequência e, em seguida, chame writeHead
Se setHeader tiver sido chamado para definir o cabeçalho, ele o fará. passe-o para writeHead merge
Se este método for chamado e response.setHeader() não tiver sido chamado), o valor do cabeçalho fornecido será gravado diretamente no canal da rede e não será armazenado em cache internamente. response.getHeader() ) no cabeçalho não produz os resultados esperados. Se o cabeçalho precisar ser preenchido de forma incremental e potencialmente recuperado e modificado no futuro, use response.setHeader() .
setHeader só pode definir cabeçalhos um por um, writeHead pode definir muitos
setHeaders de uma vez e pode ser chamado repetidamente. writeHead só pode ser chamado uma vez, e
setHeader e writeHead aparecerão ao mesmo tempo. writeHead tem alta prioridade.
writeHead pode definir códigos de status e informações de status, setHeader não pode ser definido, apenas o cabeçalho pode ser definido.