Я использую CKEditor в формате Markdown для отправки созданного пользователем контента. Я хотел бы очистить этот контент от вредоносных тегов, но я хотел бы сохранить форматирование, которое является результатом анализатора уценки. Я использовал два метода, которые не работают.
Метод первый
<!--- Sanitize post content --->
<cfset this.text = HTMLEditFormat(this.text)>
<!--- Apply mark down parser --->
<cfx_markdown textIn="#this.text#" variable="parsedNewBody">
Проблема По какой-то причине <pre>
и <blockquote>
экранированы, и поэтому я не могу их использовать. Появляются только специальные символы. Другие теги уценки работают хорошо, такие как жирный шрифт, курсив и т. Д. Может ли быть так, что CKEdit неправильно применяет уценку к <pre>
и <blockquote>
?
Пример: если бы я набрал <script>alert("!");</script>
, я бы получил следующее: <script>alert("!");</script>
Метод второй
То же, что и в первом методе, но в обратном порядке, в котором выполняется очистка после того, как анализатор уценки выполнил свою работу. Это фактически бесполезно, так как функция очистки удаляет все теги, вредоносные или созданные тегами анализатором уценки.
Хотя я хочу дезинфицировать вредоносный контент, я хочу сохранить основные теги HTML и содержимое тегов <pre>
и <blockquote>
! - есть идеи, как?
Спасибо!