Экранирование библиотек для Java с использованием символьных потоков - PullRequest
2 голосов
/ 10 августа 2011

Существуют ли какие-либо HTML / JavaScript-экранирующие библиотеки для Java с интерфейсом символьного потока?

1 Ответ

1 голос
/ 10 августа 2011

Да. Класс Escaping Кахи предоставляет экранировщики, которые добавляют экранированный текст к Appendable для HTML, CSS, JavaScript, содержимого регулярных выражений JavaScript, JSON и XML.Java Writer s реализует Appendable, как и StringBuilder и StringBuffer.

. Он также позволяет экранировать JavaScript в режиме, позволяющем его встраивать в элемент HTML <script> или раздел XML CDATA.без дальнейшего экранирования с помощью угловых скобок.

/**
 * Given a plain text string writes an unquoted javascript string literal.
 *
 * @param s the plain text string to escape.
 * @param asciiOnly Makes sure that only ASCII characters are written to out.
 *     This is a good idea if you don't have control over the charset that
 *     the javascript will be served with.
 * @param embeddable True to make sure that nothing is written to out that
 *     could interfere with embedding inside a script tag or CDATA section, or
 *     other tag that typically contains markup.
 *     This does not make it safe to embed in an HTML attribute without
 *     further escaping.
 * @param out written to.
 */
public static void escapeJsString(
    CharSequence s, boolean asciiOnly, boolean embeddable, Appendable out)
    throws IOException

и есть удобный метод с тем же именем, но он принимает StringBuilder и не требует обработки IOException.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...