Necesito construir una API REST, pero debería implementar un patrón MVC. Estoy confundido sobre lo que debería ir en la sección de vista. Alguien puede explicar?

El Controlador de vista de modelo se usa cuando desea actualizar el modelo y con los cambios en la vista y viceversa, normalmente un controlador como Bindings o una clase de controlador separada que actúa como un pegamento se usaría para actuar como un controlador.

Cuando se trata del caso de Rest API, no hay ninguna vista involucrada y, después de eso, solo tiene el modelo que contiene los datos y luego el controlador que distribuye el resultado.

Principalmente lo que devolvería son datos basados ​​en un formato de intercambio como XML, JSON, JSONP, etc.

El consumidor del servicio web aprovechará la API y mostrará su vista en consecuencia analizando el formato de intercambio devuelto.

NO DEVUELVE EL HTML O EL CONTENIDO FORMATEADO EN SU RESPUESTA, como lo ha mencionado Marcus Geduld.

Puede usar un Framework en su idioma respectivo que incorpora los implementos del patrón MVC si desea crear su punto final REST.

Algunos ejemplos para PHP – Laravel, Phalcon

Algunos ejemplos para JAVA – Spring MVC, Spring RESTful

Ponga lo que quiera que se muestre en el navegador en la sección de vista.

No ponga nada más en la sección de vista.

Aquí hay un ejemplo simple:

MODELO

Registros en caché de una base de datos, p. Ej.

[{primero: ‘Bill’, último: ‘Smith’, edad: 24}, {primero: ‘Mary’, último: ‘Jones’, edad: 47} …]

CONTROLADOR

Lógica empresarial, por ejemplo, una función que convierte una edad, como 47, en un año de nacimiento, como 1969.

También pondría su enrutamiento en esta sección.

VER

El marcado que se devolverá al navegador, p. Ej.

  • Bill Smith, 1992
  • Mary Jones, 1967

Si hay alguna lógica de plantilla compleja, por ejemplo, una función que realiza un cálculo complicado, basado en la edad, colóquelo en el controlador, no en la vista. Haz la vista lo más tonta posible. Piense en ello como el retorno de una declaración de función. Es más como un valor que un cálculo o un conjunto de pasos.

Dijiste que quieres construir una API, ¿por qué necesitas una vista para eso? En asp.net mvc versión 5 puede construir controladores que heredan de ApiController. Este es un controlador especial que puede exponer datos en json y de manera más natural para una API. No olvide utilizar el modelo de programación asíncrono siempre que sea posible para lograr un alto rendimiento. Si necesita crear una estructura de carpetas, debe crear un proyecto utilizando Visual Studio, que debería configurar casi todo para usted.

More Interesting

Cómo recorrer un complejo árbol JSON de objetos y matrices en JavaScript

Compré un nombre de dominio de Google y ahora necesito desarrollar el sitio web. ¿Qué alojamiento es el mejor?

Estoy desarrollando un sitio web donde las personas pueden subir notas y videos de conferencias para otros. ¿Cómo puedo obtener el almacenamiento para ellos?

Cómo encontrar un desarrollador para un proyecto

Golang: ¿Cómo convertir una matriz JSON en estructuras y usar JSON Marshal para obtener los datos?

Soy un desarrollador front-end en una pequeña empresa de TI, pero mis habilidades son constantes allí. ¿Qué puedo hacer cuando voy a una entrevista y me rechazan?

¿Debo aprender el lenguaje JavaScript completo o es mejor aprender algunos relacionados con el desarrollo web en caso de que quiera convertirme en desarrollador web?

Si quiero crear un sitio web para mi cliente, ¿quién tendrá que comprar el host y el dominio?

Ya trabajo con HTML5 CSS3 JavaScript y jQuery, ¿qué tecnologías como Sass puedo aprender para acelerar mi proceso de desarrollo?

Soy un estudiante de TI de tercer año, me perdí un poco y quería reiniciar mi vida con programación web o cosas relacionadas con las redes sociales. ¿Cómo debo comenzar?

He creado mi sitio web en mi servidor local y estoy listo para comprar un hosting y un nombre de dominio. ¿Qué debo elegir y por qué?

Cómo evitar que el usuario final de una aplicación web cambie los valores en el tiempo de ejecución de JavaScript

Tengo 20 años. ¿Debo aprender a hackear o ir al desarrollo web? Estoy asistiendo a cursos de CS en Italia. Estoy dispuesto a poner todo mi esfuerzo para lograr ambos.

Cómo crear una tabla con un marco de JavaScript

Cómo elegir el proveedor de alojamiento web adecuado