HTTPQUERY
Español

200 OK

Uso

Una respuesta 200 OK siempre incluye un cuerpo de mensaje, aunque el servidor es libre de fijar su longitud en cero. Según el servidor, esto es lo habitual al procesar una solicitud PUT, DELETE u OPTIONS.

Cuando el servidor no tiene contenido que devolver, el código de estado 204 resulta más apropiado. Para las solicitudes que crean un recurso nuevo, como un POST que crea contenido, se devuelve en su lugar un código de estado 201.

Impacto en SEO

Una respuesta 200 pasa el contenido al proceso de indexación de Google, pero la indexación no está garantizada. Google evalúa el contenido y decide de forma independiente si incluye la página en los resultados de búsqueda. Una respuesta 200 en una página que indica que el contenido falta o ha desaparecido genera un soft 404. Demasiados soft 404 erosionan la confianza de Google en las señales del servidor del sitio y perjudican el posicionamiento.

Nota

Las herramientas de desarrollo del navegador muestran “200 (from disk cache)” o “200 (from memory cache)” cuando la respuesta se sirve desde la caché local sin una solicitud de red. Esto es distinto de un 200 enviado por el servidor (ida y vuelta completa por la red) y de un 304 (el servidor confirma que la caché está vigente). “200 from cache” significa que el max-age de Cache-Control aún no ha expirado, mientras que un 304 significa que el navegador revalidó con el servidor.

GET

Una respuesta GET contiene el cuerpo de mensaje del recurso solicitado.

Solicitud

GET /document.pdf HTTP/1.1
Host: example.com

Respuesta

HTTP/1.1 200 OK
Content-Type: application/pdf
Content-Length: 10000

<message body contains the requested PDF document>

Una respuesta HEAD contiene las mismas cabeceras que una respuesta GET, sin cuerpo de mensaje.

Solicitud

HEAD / HTTP/1.1
Host: example.com

Respuesta

HTTP/1.1 200 OK
Content-Type: text/html; charset=UTF-8

POST

Una respuesta POST contiene normalmente información sobre el resultado de la acción o sobre el estado de progreso.

Solicitud

POST /api/data HTTP/1.1
Host: example.com
Content-Type: application/json
Content-Length: 24

{"name":"example entry"}

Respuesta

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 18

{"success":"true"}

PUT

Una respuesta PUT contiene normalmente información sobre el resultado de la acción o sobre el estado de progreso.

Solicitud

PUT /api/data/1 HTTP/1.1
Host: example.com
Content-Type: application/json
Content-Length: 24

{"name":"updated entry"}

Respuesta

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 18

{"success":"true"}

TRACE

Una respuesta TRACE contiene el mensaje de solicitud tal como lo recibió el servidor.

Solicitud

TRACE / HTTP/1.1
Host: example.com

Respuesta

HTTP/1.1 200 OK
Content-Type: message/http
Content-Length: 38

TRACE / HTTP/1.1
Host: example.com

DELETE

Una respuesta DELETE incluye una indicación del estado de la acción completada.

Solicitud

DELETE /api/data/1 HTTP/1.1
Host: example.com

Respuesta

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 18

{"deleted":"true"}

OPTIONS

Una respuesta OPTIONS incluye la cabecera Allow, que enumera los métodos HTTP que acepta el servidor. De forma opcional, el servidor indica más detalles en el cuerpo del mensaje.

Solicitud

OPTIONS / HTTP/1.1
Host: example.com

Respuesta

HTTP/1.1 200 OK
Allow: GET,HEAD,PUT,OPTIONS
Content-Type: text/plain;charset=UTF-8

Referencias de código

.NET

HttpStatusCode.OK

Rust

http::StatusCode::OK

Rails

:ok

Go

http.StatusOK

Symfony

Response::HTTP_OK

Python3.5+

http.HTTPStatus.OK

Java

java.net.HttpURLConnection.HTTP_OK

Apache HttpComponents Core

org.apache.hc.core5.http.HttpStatus.SC_OK

Angular

@angular/common/http/HttpStatusCode.Ok