Как раскодировать строку которая приходит с сервера?
Здравствуйте, подскажите пожалуйста.
На сервере, как и на клиенте стоит проверка, что если пользователь вводит html теги, то их нужно кодировать, функция выглядит таким образом: var encodeHtmlEntities = function (str) { return String(str) .replace(/&/g, '&') .replace(/</g, '<') .replace(/>/g, '>') .replace(/"/g, '"') .replace(/'/g, ''') .replace(/\\/g, '\') .replace(/\//g, '/'); }; Проблема в том, что сервер так же кодирует сообщения перед тем, как их отправить, то есть мне приходит уже вот такая строка: <script>alert(1)</script> И если я ее вставлю в ui то она в таком виде и будет. А мне нужно сделать так, чтоб она в ui выглядела вот так <script>alert(1)</script> Я так понимаю, что мне ее нужно сначала раскодировать, а потом снова закодировать и вставить в ui? Вопрос: должна выглядеть функция раскодирования? Спасибо за помощь и ваше время. |
Вставлять надо не как текст а как html, очевидно.
Да и кодировать проще через текст ноду. НО. Даже если вы совсем не понимаете, что и как делаете(из вопроса очевидно), элементарная логика должна бы подсказать, что чтобы раскодировать закодированное можно применить ту же самую функцию просто поменяв местами текст между // и между ''. |
Цитата:
|
На сервере, как и на клиенте стоит проверка, что если пользователь вводит html теги
Это не кодирование, а преобразует в HTML-сущности, и если после этого вы делаете обратное, то зачем пропускаете полученное от клиента через htmlspecialchars? |
Часовой пояс GMT +3, время: 01:54. |