Saltar al contenido principal

Resposta HTTP

A continuación vemos a composición dunha resposta HTTP.

Liña de partida

A liña de petición inclúe a seguinte información:

  • Versión do protocolo HTTP. Exemplo: HTTP/2
  • Código de estado. Exemplo: 200
  • Mensaxe descritiva do código. Exemplo: OK

Exemplo de liña de partida:

HTTP/2 200 OK

Os códigos de estado HTTP agrúpanse en varios grupos segundo o valor do seu primeiro díxito:

Código de estadoDescrición
1xxResposta informativa
2xxPetición correcta
3xxRedirección
4xxError do cliente
5xxError do servidor

Códigos de estado máis utilizados:

Código de estadoNomeDescrición
200OKÉ o código empregado cando se proporciona un recurso de forma correcta. É, polo tanto, o máis empregado de todos.
301Moved PermanentlyRecurso movido permanentemente. Rediríxese cara a nova localización do recurso.
400Bad RequestPetición mal formada por parte do cliente.
403ForbiddenNon se proporciona o recurso solicitado porque o cliente non ten privilexios.
404Not FoundO recurso que se pide non se atopa.
500Internal Server ErrorError interno do servidor. En Apache Server pode deberse a un ficheiro de configuración con contido erróneo.
502Bad GatewayO servidor está actuando de proxy ou gateway e recibiu unha resposta inválida doutro servidor.

Consulta todos os códigos de estado HTTP que existen na Mozilla Developer Network.

Campos da cabeceira máis comúns

Aquí tes os campos de cabeceira máis comúns:

CampoFunciónExemplo
Content-TypeTipo MIME do contido da respostaContent-Type: text/html
Content-LengthTamaño (en bytes) do corpo da respostaContent-Length: 1024
DateData e hora do envío da respostaDate: Fri, 05 Jul 2025 12:00:00 GMT
ServerInformación sobre o software do servidorServer: Apache/2.4.1 (Unix)
Set-CookieEnvía cookies ao clienteSet-Cookie: sessionid=abc123; HttpOnly
Cache-ControlInstrucións de caché para o navegadorCache-Control: no-cache
ExpiresData límite para considerar válida a respostaExpires: Sat, 06 Jul 2025 12:00:00 GMT
LocationRedirección a outra URL (en códigos 3xx)Location: https://novo-sitio.com
ETagIdentificador único para controlar versións do recursoETag: "abc123def456"
ConnectionControla o estado da conexiónConnection: close ou keep-alive

Corpo da resposta (body)

É o contido real que o cliente solicitou. É dicir, o que non é cabeceira.

Pode ser:

  • Un documento HTML, CSS ou JavaScript.
  • Un JSON (nunha API-REST)
  • Un arquivo multimedia (PDF, imaxe, etc.)
  • Ou estar baleiro (por exemplo, nunha resposta 204 No Content)

Exemplo completo dunha resposta HTTP

HTTP/2 200 OK
Date: Fri, 05 Jul 2025 12:00:00 GMT
Server: Apache/2.4.1 (Unix)
Content-Type: text/html; charset=UTF-8
Content-Length: 1354
Connection: keep-alive
Set-Cookie: ID_usuario=12345; Path=/; HttpOnly

<!DOCTYPE html>
<html>
<head><title>Páxina de Exemplo</title></head>
<body>
<h1>Benvido á páxina</h1>
</body>
</html>