2011-04-12 40 views
1

Ruby有一些非常舒适的白名单sanitizers,但我找不到使用白名单进行HTML转义的工具。所有Ruby HTML转义库只能在提供的文本中转义所有HTML标签。有没有图书馆让我选择哪些标签可以逃脱?使用白名单转义HTML

+0

是否只对您尝试过的唯一一个进行净化?你的问题听起来像你已经尝试了至少两个,但你只指向一个,让我们猜测你可能试过了甚么。 [丝瓜络](https://github.com/flavorjones/loofah)是另一种可能吸引你的东西。 – 2011-04-12 23:34:38

+0

好的,看起来丝瓜络支持转义,但我没有看到配置白名单的方法。 – tok 2011-04-13 17:55:13

+0

给开发人员发短信。我几年前在与丝瓜一起工作时,他的反应非常敏感。 – 2011-04-13 20:33:45

回答

1

链接到的Sanitize库支持自定义配置。请参阅the readme中的“自定义配置”标题。 “元素”选项听起来就像你要找的东西 - 你可以指定一个允许的标签数组。

:elements => %w[ 
    a abbr b blockquote br cite code dd dfn dl dt em i kbd li mark ol p pre 
    q s samp small strike strong sub sup time u ul var 
    ] 
+0

我看不到Sanitize库支持HTML转义开箱即用。只要指定这个“元素”选项,它就可以将这些标签剥离出来(而不是逃脱它)。如果我错了,请纠正我。 – tok 2011-04-13 17:54:42

+0

“转义”标签是什么意思? – 2011-04-13 23:19:34