Библиотека PHP HTMLPurifier, но для Rails? - PullRequest
0 голосов
/ 22 мая 2011

Любой, кто много чего сделал с PHP и получает ввод расширенного текста от чего-то вроде TinyMCE, (вероятно) использовал что-то вроде HTMLPurifier , чтобы не допустить неприятностей в HTML, который вы намеренно позволяете пользователю представить.

Например, HTMLPurifier возьмет строку (потенциально искаженного) HTML и удалит запрещенные элементы и атрибуты, попытается исправить поврежденный HTML и в некоторых случаях преобразовать такие вещи, как <i> в <em>.

Существует ли что-нибудь эквивалентное для Rails (3)? Каков общепринятый способ очистки входных данных от редакторов форматированного текста в Rails, чтобы вы могли выводить неэкранированный HTML-код на веб-страницу и знать, что такие вещи, как теги <style> и <script>, удалены из него, и он не собирается сломать вашу страницу (или украсть ваши куки!)?

РЕДАКТИРОВАТЬ | Кто-нибудь использовал Sanitize ? Любые другие варианты с за и против?

1 Ответ

1 голос
/ 22 мая 2011

Вы можете использовать метод санации .

sanitize(html)

Существует также Санация драгоценный камень .

Sanitize.clean(html)

Я обычно предпочитаю драгоценный камень Sanitize, потому что его можно использовать в качестве фильтра before_save в ваших моделях вместо того, чтобы использовать метод sanitize в каждом из ваших представлений.

...