En mi aplicación web, permito que el contenido generado por el usuario se publique para consumo público similar a Stackoverflow.¿Cuál es la mejor manera de manejar el contenido html generado por el usuario que será visto por el público?
¿Cuál es la mejor práctica para entregar esto?
Mis pasos actuales para el manejo de contenido generado por el usuario son:
utilizo MarkItUp para permitir que los usuarios una forma sencilla para dar formato a su html.
Después de un usuario ha enviado emabrgo cambios que se ejecuta a través de un HTML Sanitizer(desplazarse a la bottem) que utiliza una lista blanca enfoque.
Si el proceso de higienización tiene eliminado cualquier contenido creado por el usuario I no guarde el contenido. Luego Devuelve contenido modificado con un mensaje de advertencia , "Se detectaron algunas etiquetas de contenido ilegales y se quitó la verificación doble de su trabajo y intente de nuevo."
Si el contenido pasa a través del proceso de desinfección limpia, ahorro el contenido HTML en bruto a la base de datos .
Cuando renderizo al cliente acabo de paso el html en bruto del archivo base a la página.
Todavía no he permitido que se usen estilos de CSS como contenido, pero quiero permitir el video pronto. Pensé que era una pregunta en sí misma. – Aaron
Lo es. En la mayoría de los casos, recomiendo ir a la ruta de Facebook. Trate los videos como archivos adjuntos, en lugar de tenerlos como parte del contenido. –
oh excelente Idea! – Aaron