Pregunta

¿Por qué necesito un de rebajas con un editor editar delante como armas de destrucción masiva ? ¿Qué significa la reducción del precio hacen que el contenido que se envía desde el editor de armas de destrucción masiva?
¿Cómo Markdown almacenar el contenido en el back-end? ¿Es el mismo camino como *bold* o en algún otro formato? ¿Por qué no puedo simplemente hacer una html codificación ?

Lo siento si sonaba muy ingenuo.

¿Fue útil?

Solución

Es probable que sea útil para tomar un paso atrás y pedir a algunas de las preguntas más grandes. La cuestión de rebajas está tratando de resolver es el de la edición rica en el navegador. Considere esto:. En algún momento, para cualquier pieza de software para permitir texto enriquecido que tiene para describir la riqueza en un cierto modo, sin embargo, que puede haber

podría llamar a esa descripción de la riqueza (por la descripción de la riqueza me refiero como "este fragmento de texto está en negrita" o "este fragmento de texto es un hipervínculo), podríamos llamar a esa descripción de la riqueza 'marcado' - se marcas hasta el texto con meta "riqueza".

Las implementaciones de texto enriquecido puede adoptar dos enfoques, ya sea a.) Ocultar el margen de beneficio por parte del usuario o b.) Dejar que ellos tienen acceso a la marca.

Para los que optan por ocultarlo, el resultado final es muy a menudo WYSIWYG. El usuario no es consciente de lo que está sucediendo detrás de las escenas. El editor se encarga de los detalles. Piense MS Word como un ejemplo. No se manipula un formato a la palabra de marcas como un usuario final regular.

Para implementaciones que decidan exponer el margen de beneficio, es un lenguaje de marcas a continuación, con el fin de permitir a los usuarios a interacat con él. Tales lenguajes de marcas serían cosas como HTML haciendo <tag> o código BB por ejemplo, haciendo cosas como [tag].

Markdown es uno de estos de estos idiomas.

A diferencia de los primeros tipos que he mencionado, de rebajas ha tratado de diseñar misma manera que el margen de beneficio hace que la gente común ya utilizan ASCII. Por ejemplo, es común que la gente asterisco su texto para desactivarla, *important*, y esta notación en Markdown es un indicador de la cursiva.

En lo que respecta al almacenamiento, como Stephan señaló, el sistema lo más probable es almacenar la reducción del precio crudo, ya que el usuario tendrá más probabilidades de tener la posibilidad de editar, y la reducción del precio original puede ser recordado para ese propósito.

En la mayoría de los sistemas que he construido, almaceno la reducción del precio, y luego se normalizan a un segundo campo que almacena en caché la representación HTML de la reducción del precio. De esta manera no tengo que hacer markdown-> HTML renderizado para cada campo de rebajas. Se tarda un poco más de espacio, pero yo prefiero que el usuario tenga una respuesta más rápida que utilizan menos espacio de almacenamiento de base de datos.

El cuidado debe también tener cuidado al aceptar de rebajas desde el navegador, ya que puede contener fácilmente etiquetas <script> que deben ser filtrados. La mayoría de las implementaciones de rebajas también reconocerán HTML entremezcla con el formato de rebajas, como por lo que es seguro, es necesario asegurarse de que sus entradas y cachés son desinfectados correctamente.

Otros consejos

La razón para utilizar un sistema de codificación alternativo que no sea HTML es para la seguridad

estilo tan wiki de rebajas y otros sistemas no suelen apoyar lenguajes de script codificación

HTML soporta lenguajes de script de muchas maneras (

Los dos principales problemas de seguridad son:

  1. criminales de malware utilizan secuencias de comandos en el contenido generado por el usuario a intentar acciones de malware en el ordenador lectores de contenido por secuencias de comandos para acceso conocido agujeros de seguridad

  2. cargadores libres utilizando scripts para subvertir el resto del sitio, cambiando el marco de contenido o de estilos es decir, los anuncios, el menú de, logotipos, etc. Esto también puede ser un comportamiento criminal si no sólo una molestia

Mediante el uso de un lenguaje intermedio de rebajas, como usted tiene control total sobre el resultado representado

Filtrado HTML es posible, sino que también es compleja y riesgosa

La otra razón importante para un sistema de codificación alternativa es la aplicación de estilo. HTML normal tiene demasiadas opciones. Al limitar las opciones disponibles, los usuarios sólo pueden utilizar ciertos estilos. El general hace de aspecto más limpio y más fácil de leer el contenido (SO comparar a Ebay)

La razón principal para usar Markdown es la legibilidad de un texto marcado. Por ejemplo, se puede enviar en un mensaje de texto sin formato y el lector todavía va a entender los emphiasis, balas, el texto se divide en los apartados etcétera.

Cuando se le pregunta sobre el almacenamiento de datos, depende. Si habilita el motor de rebajas en el blog de WordPress, que almacena datos que el usuario tiene de entrada - en Markdown. En desbordamiento de pila, sin embargo, parece que los datos se almacenan como HTML. Al menos, los "datos de desbordamiento de pila volcados" contener HTML, no de rebajas (que he visto gente quejándose ) que tienen que convertir de nuevo).

Si utiliza el editor de armas de destrucción masiva, se puede mostrar al usuario cómo los resultados se verá como después de ser convertido a HTML. A pesar de que la sintaxis de Markdown es muy simple, no es difícil cometer errores. Por lo tanto, lo mejor es mostrar a los usuarios la salida.

Otra razón para el uso de rebajas en lugar de un control WYSIWIG - un control WYSIWIG permite al usuario utilizar HTML en los datos que está visualizando en su página web. Por lo tanto, usted tiene que ser el que decide cuando hay HTML simplemente incorrecta y cuando es un mal XSS / CSRF / lo que sea por inyección. En Markdown, sólo tiene que convertir algo * * a <b>something</b>, eliminar cualquier desconocido HTML elementos y ya está.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top