Sobre o 101 Switching Protocols
Visão geral do 101 Switching Protocols
Indicar a troca de protocoloCódigo de status HTTP | ||
101 Switching Protocols Visão geral O 101 Switching Protocols é um código de status HTTP que informa ao cliente que o servidor está trocando de protocolo de comunicação conforme solicitado. Este código é retornado quando o cliente utiliza o cabeçalho |
||
Significado O servidor aceitou a solicitação e trocou para o protocolo especificado. |
Quando o 101 Switching Protocols é retornado?
- Quando o cliente envia uma solicitação com o cabeçalho
Upgrade
- Quando o servidor suporta e aprova a troca de protocolo
- Quando ocorre a troca de HTTP para outro protocolo, como WebSocket ou HTTP/2
Exemplos de 101 Switching Protocols
Troca de HTTP para WebSocket
GET /chat HTTP/1.1 Host: example.com Upgrade: websocket Connection: Upgrade
Exemplo de resposta:
HTTP/1.1 101 Switching Protocols Upgrade: websocket Connection: Upgrade
Explicação: Quando o cliente solicita a troca para WebSocket utilizando o cabeçalho Upgrade
, e o servidor aprova a solicitação, o código de status 101 é retornado. Após isso, a comunicação continua utilizando o protocolo WebSocket.
Troca de HTTP para HTTP/2
GET / HTTP/1.1 Host: example.com Upgrade: h2c Connection: Upgrade
Exemplo de resposta:
HTTP/1.1 101 Switching Protocols Upgrade: h2c Connection: Upgrade
Explicação: Quando o cliente solicita a troca de HTTP/1.1 para HTTP/2, o servidor retorna 101 caso aprove a troca. Essa troca é válida apenas se tanto o cliente quanto o servidor suportarem o protocolo.
Pontos importantes
Considerações ao retornar o 101 Switching Protocols:
- Avalie cuidadosamente as solicitações do cliente
Certifique-se de que o servidor suporta a troca de protocolo solicitada pelo cliente. - Considere os riscos de segurança
Trocar protocolos, especialmente para WebSocket, pode implicar riscos potenciais de segurança e deve ser configurado com cuidado.
Comparação com códigos de status HTTP relacionados
Descrição de códigos de status relacionados ao 101 Switching Protocols:
- 200 OK: Usado quando a solicitação é processada com sucesso sem alterar o protocolo de comunicação.
- 426 Upgrade Required: Retornado quando o cliente precisa atualizar para um protocolo suportado pelo servidor para concluir a solicitação.
Compreender essas diferenças ajuda a garantir o uso adequado do código de status 101.