Estoy empezando a hacer algunos JS/HTML/CSS. Al mirar a su alrededor, parece que no es inusual devolver HTML desde el back-end (por ejemplo, una respuesta Ajax) y mostrarlo directamente (por ejemplo, asignándolo al innerHTML de un elemento). Por ejemplo, creo que el método jQuery load() básicamente es un atajo para hacer esto.¿Es mejor devolver HTML directamente para una respuesta Ajax?
Tomar el enfoque me preocupa por un par de razones, pero no estoy seguro si es solo que no estoy familiarizado con los enfoques y modismos en estas áreas y estoy detrás de los tiempos o si estos son legítimos preocupaciones Mis preocupaciones específicamente son:
1) Parece inseguro asignar directamente HTML a un elemento. O, como mínimo, peligroso al menos si existe la posibilidad de que haya contenido de usuario (o incluso contenido de terceros).
2) El envío de información de presentación (HTML) parece directamente que podría conducir a una mezcla de presentación/modelo que es mejor evitar. Por supuesto, sería posible tener estos limpiamente separados en el back-end y aún así devolver HTML, pero en los pocos proyectos que he visto, ese no ha sido el caso.
Entonces, mi pregunta es, ¿devolver HTML una forma legítima de respuesta HTTP en una aplicación Ajax o es mejor evitarlo?
Gracias! Gran punto sobre el móvil. Estoy de acuerdo con intentar filtrar la entrada en submit, pero no creo que se pueda hacer por completo, porque el contexto en el que se utilizará no siempre se puede conocer: podría ser un contexto HTML, JS o CSS (por ejemplo). – AlwaysLearning