Я использую драгоценный камень redcarpet для уценки сгенерированного пользователем текста и хотел бы показывать изображения внешних ссылок / хостов изображений. До сих пор я пробовал что-то вроде этого:
def markdown(text)
options = { ... }
extension = { ... }
text.gsub!(/(https?:\/\/[\S]*.jpg)/, '<img src="\1" width="100%">')
renderer = Redcarpet::Render::HTML.new(options)
markdown = Redcarpet::Markdown.new(renderer, extensions)
markdown.render(text).html_safe
end
Тем не менее, я хотел бы escape_html
или filter_html
, потому что внедрение </div>
, id
и классов может действительно испортить сайт. Это удалит тег изображения.
Есть ли лучший способ рендеринга внешних изображений при сохранении безопасности HTML?