Отображение HTML-кодированной строки в браузере - PullRequest
1 голос
/ 19 апреля 2011

В настоящее время я экспериментирую с различными HTML-кодерами для кодирования пользовательских значений в моем веб-приложении на Java.Я написал небольшой пример приложения, которое печатает результаты различных кодеров на веб-сайте.До сих пор это работает без проблем.

К сожалению, браузер (FireFox) также ведет себя должным образом, отображая закодированные символы правильным образом (например, преобразует &gt; в <).В этом особом случае я не хочу, чтобы это произошло, я хочу видеть закодированную строку такой, какая она есть.Я хочу, чтобы браузер отображал строки так же, как их отправляет веб-сервер.

Тег <pre> не работает, но и с <code> тоже нет.Есть ли HTML-тег, который я упустил для этого?Или есть еще одна хитрость, которую я могу использовать?Я не хочу каким-либо образом манипулировать строкой на стороне сервера с помощью дополнительных кодировок, чтобы избежать вводящих в заблуждение результатов.

Если коротко задать вопрос - как заставить мой браузер отображать строку4 &gt; 5 как есть и неправильно декодируется как 4 < 5?

Ответы [ 2 ]

1 голос
/ 19 апреля 2011

Если вы не хотите, чтобы браузер обрабатывал документ как HTML, не используйте его как HTML.

В PHP вы бы сделали:

<?php
    header('Content-Type: text/plain');
    print $string;
?>

Я не знаю синтаксис Java.

Тег <pre> не работает, но с <code> успех

не работает

<pre> просто означает, что пробел значителен. <code> просто означает «Это HTML-представление некоторого кода».

0 голосов
/ 19 апреля 2011

В этом случае вам действительно нужно представить> как HTML-сущности. Итак, &amp;gt; должно работать, я верю.

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