¿Necesitamos devolver explícitamente un código http 200 si una solicitud es exitosa?

Hay dos respuestas a esta pregunta.

  1. Tienes que devolver ALGUNOS códigos de error. La sintaxis de HTTP requiere que se devuelva un código de estado de tres dígitos; consulte Protocolo de transferencia de hipertexto (HTTP / 1.1): sintaxis de mensajes y enrutamiento RFC-7230 para obtener más información. Es posible que algunos entornos de idiomas no requieran especificar un código en su programa, pero lo más probable es que usen 200 en ese caso.
  2. El código que devuelve normalmente debería ser 200, pero hay otros códigos válidos para devolver. Consulte el Protocolo de transferencia de hipertexto (HTTP / 1.1): semántica y contenido para obtener más información, pero los más comunes son:
  • 201 si su punto final crea un recurso. La respuesta debe tener un encabezado de ubicación que especifique la URL para acceder al recurso.
  • 204 si no tiene contenido útil para devolver. Esto es común si está eliminando un recurso.
  • 200 si devuelve algún contenido útil. Esta debería ser su opción predeterminada.

Desde el servidor hasta el navegador, es obligatorio. Sin el código de respuesta, el navegador debe tratar el cuerpo final como un documento html y no puede hacer mucho con él. Puede consultar: Tolerancia del cliente de servidores HTTP defectuosos

Pero si la pregunta era entre el código de la aplicación y el marco del servidor, entonces no es necesario ya que la mayoría de los marcos asumen 200 OK como código de estado predeterminado y el marco lo insertará automáticamente. Pocos frameworks / idiomas que lo hacen: Servlets, jax-rs, php,

Siempre es una buena práctica enviar el código de estado HTTP apropiado junto con la respuesta. Por ejemplo, cuando intenta buscar un objeto por id y si NO se encuentra, debe enviar el código con el código de estado 404. Del mismo modo, cuando intenta crear un objeto, siempre es mejor enviar el código de estado 201. NO es recomendable enviar el código de respuesta siempre 200 ok.

Sí. Es lo que le dice al cliente que continúe y lea el contenido. El cliente rechazará cualquier mensaje que no tenga un código de retorno.

More Interesting

¿Puedo escribir un buen sitio web que funcione en HTML5 sin usar un solo elemento ?

¿Cuál es la mejor manera de autenticar un inicio de sesión personalizado en ASP.NET con C #, sesión o autenticación de formulario?

¿Cuáles son las principales diferencias entre un ingeniero de interfaz de usuario, un desarrollador web y un ingeniero?

¿Cuál es la mejor manera de educar a los clientes y ayudarlos a evitar gastar dinero en soluciones web de bajo presupuesto?

¿Hay alguna razón por la que no pueda usar Adobe Illustrator para crear y exportar gráficos web?

Hay muchos marcos y tecnologías web (por ejemplo, Spring, Node.js, Yii, Symphony, Play, Ruby on Rails, etc.). ¿Cuál es el marco / tecnología web más evolucionado que probablemente traerá la evolución web futura?

¿Es una buena idea poner todos sus sitios web en una sola empresa de hosting (es como poner todos los huevos en una canasta)?

¿Cuál es mejor para construir su propio sitio web, HTML / CSS o PHP?

¿Qué tan difícil fue aprender PHP para ti?

¿Cuál es la diferencia entre PHP y Python? ¿Cuándo debería considerar usar alguno?

¿Cuáles son las diferencias entre estos métodos de reloj en angularJS?

¿Es necesario Photoshop para el diseño web?

¿Puedo crear mi propio blog usando Java Spring MVC? Tengo buenos conocimientos en Spring MVC, así que decidí crear uno yo mismo y cualquier idea o sugerencia es bienvenida.

¿Es posible abortar () una carga jQuery ()?

¿Está bien que me guste escribir back-end en JavaScript en lugar de Java o C # porque el nivel de abstracción es más bajo?