【发布时间】:2015-06-15 09:29:13
【问题描述】:
如何获取给定 Jsoup Whitelist 的所有有效标签的列表?
我在Jsoup whitelist docs 的文档中找不到这样的功能。我使用 ColdFusion,但 java 解决方案或提示会很好。我想我可以翻译一下。
【问题讨论】:
标签: java coldfusion jsoup
如何获取给定 Jsoup Whitelist 的所有有效标签的列表?
我在Jsoup whitelist docs 的文档中找不到这样的功能。我使用 ColdFusion,但 java 解决方案或提示会很好。我想我可以翻译一下。
【问题讨论】:
标签: java coldfusion jsoup
如果你想走反射路线,你可以做类似下面的事情,获取对tagNames集合的访问,将其转换为org.jsoup.safety.Whitelist$TagName对象数组(包含标签名称),然后附加@ 987654323@这些对象的值到另一个数组。
<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>
如果您需要属性和/或协议字段,这是一种类似的方法,但由于它们是映射,因此需要迭代更多。
【讨论】:
您可以检查here,您要的是tagNames 集。该类不提供任何 getter。
你可以做的是:
Whitelist类并添加一个getter。之后您甚至可以提出拉取请求。【讨论】: