如何获取给定Jsoup Whitelist
的所有有效标签的列表?
我在Jsoup whitelist docs的文档中找不到这样的功能。我使用ColdFusion,但java解决方案或提示没问题。我想我可以翻译它。
答案 0 :(得分:1)
您可以查看here,您要求的是tagNames
设置。该课程不提供任何吸气剂。
你能做的是:
Whitelist
类并添加一个getter。之后你甚至可以提出拉动请求。答案 1 :(得分:1)
如果你想进入反射路线,你可以做类似下面的事情来抓取tagNames
集的访问权限,将其转换为org.jsoup.safety.Whitelist$TagName
个对象的数组(包含标记名称)和然后将这些对象的toString()
值附加到另一个数组。
<cfscript>
whitelist = createObject("java", "org.jsoup.safety.Whitelist");
collection = [];
tags = whitelist.getClass().getDeclaredField("tagNames");
tags.setAccessible(true);
// this portion uses the relaxed whitelist as an example
for (tag in tags.get(whitelist.relaxed()).toArray()) {
arrayAppend(collection, tag.toString());
}
writeDump(collection);
</cfscript>
如果您需要属性和/或协议字段,这是一种类似的方法,但由于它们是地图,因此需要进行迭代。