English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

状态码HTTP JSP

La estructura de la solicitud HTTP y la respuesta HTTP son similares, y tienen la siguiente estructura:

  • Con la línea de estado+CRLF (retorno de carro nueva línea) comienza

  • Cero o más líneas de módulos de encabezado+CRLF

  • Una línea en blanco, como CRLF

  • Mensajes opcionales como archivos, datos de consulta, salida de consulta

Por ejemplo, una cabecera de respuesta del servidor se vería así:

HTTP/1.1 200 OK
Contenido-Tipo:.../html
Encabezado2:...
...
EncabezadoN:...
  (Línea en blanco)
!doctype...
<html>
<head>.../head>
<body>
...
</body>
</html>

La línea de estado contiene la versión de HTTP, un código de estado y un mensaje corto correspondiente al código de estado.

La siguiente tabla enumera los códigos de estado HTTP que pueden devolver los servidores y los mensajes asociados con ellos:

Código de EstadoMensajedescripción
100 Continuar Sólo una parte de la solicitud fue recibida por el servidor, pero el cliente continuará con esta solicitud siempre que no sea rechazada por el servidor
101 Cambiando de Protocolos Protocolo de Conmutación de Servidores
200 OK La solicitud se confirmó
201 Creado La solicitud fue completa al momento de la solicitud y se creó un nuevo recurso
202 Aceptado La solicitud se ha aceptado, pero no se ha completado
203 No-Información Autorizada  
204 Sin Contenido  
205 Restablecer Contenido  
206 Contenido Parcial  
300 Múltiples Opciones Una tabla de vínculos, donde el usuario puede elegir uno y acceder, con un máximo de soporte5vínculos
301 Movido Permanentemente La página solicitada se ha movido a una nueva URL
302 Encontrado La página solicitada se ha movido temporalmente a una nueva URL
303 Ver Otro La página solicitada se puede encontrar en una URL diferente
304 Not Modified  
305 Use Proxy  
306Unused Este código de estado ya no se utiliza, pero se ha reservado
307 Temporary Redirect La página solicitada se ha movido temporalmente a una nueva URL
400 Bad Request El servidor no puede identificar la solicitud
401 Unauthorized La página solicitada requiere nombre de usuario y contraseña
402 Se requiere pagoEste código de estado aún no se puede usar
403 Forbidden Se prohíbe el acceso a la página solicitada
404 Not Found El servidor no puede encontrar la página solicitada
405 Method Not Allowed El método especificado en la solicitud no está permitido
406 Not Acceptable El servidor solo puede crear una respuesta que el cliente no puede aceptar
407 Proxy Authentication Required Se debe autenticar un servidor proxy antes de que se atienda la solicitud
408 Request Timeout El tiempo de solicitud excedió el tiempo que el servidor puede esperar, la conexión se cortó
409 Conflict La solicitud tiene contradicciones
410 Gone La página solicitada ya no está disponible
411 Length Required "Content-La longitud "no se ha definido, el servidor rechaza la solicitud
412 Precondition Failed La condición previa de la solicitud fue evaluada como falsa por el servidor
413 Request Entity Too Large El servidor rechaza la solicitud porque el cuerpo de la solicitud es demasiado grande
414 Solicitud-url Too Long El servidor rechaza la solicitud porque la URL es demasiado larga. Aparece a menudo cuando se convierten grandes cantidades de información de consulta adjunta a una solicitud POST en una solicitud GET
415 Unsupported Media Type El servidor rechaza la solicitud porque el tipo de medio no es compatible
417 Expectation Failed  
500 Internal Server Error La solicitud no está completa, el servidor encontró una situación inesperada
501 Not Implemented La solicitud no está completa, el servidor no proporciona la función necesaria
502 Bad Gateway La solicitud no está completa, el servidor recibió una respuesta inválida del servidor superior
503 Service Unavailable La solicitud no está completa, el servidor se reinició o se cerró temporalmente
504 Gateway Timeout Timeout del gateway
505 HTTP Version Not Supported El servidor no admite la versión HTTP especificada

Métodos para establecer el código de estado HTTP

La siguiente tabla enumera los métodos utilizados en HttpServletResponse para establecer el código de estado:

N°.método & descripción
1public void setStatus ( int statusCode ) Este método puede establecer cualquier código de estado. Si su respuesta contiene un código de estado especial y un documento, asegúrese de llamar al método setStatus antes de devolver cualquier contenido con PrintWriter
2public void sendRedirect(String url) Este método produce302respuesta, produciendo un Location la cabeza informa a la URL de un nuevo documento
3public void sendError(int code, String message) Este método envía un código de estado (generalmente 404) y un mensaje corto, insertado automáticamente en el documento HTML y devuelto al cliente

Ejemplo de programa de código de estado HTTP

El siguiente ejemplo enviará407Proporcionar al navegador un código de error y luego el navegador le dirá "Need authentication!!!".

<html>
<head>
<title>Configuración de Código de Estado HTTP</title>
</head>
<body>
<%
   // Establecer código de error y explicar la razón
   response.sendError(407, "Need authentication!!! ");
%>
</body>
</html>

Al acceder a la página JSP anterior, se obtendrá el siguiente resultado:

También puede intentar usar otros códigos de estado para ver si obtiene algún resultado inesperado.