встроенный скрипт, отображающий тарабарщину в зависимости от типа кодирования (utf-8) - PullRequest
2 голосов
/ 01 февраля 2009

У меня есть виджет, который люди могут разместить на своем сайте.

Виджет генерируется с помощью php-скрипта, который отображает заполненную строку, используя: document.write ('$ widget_output').

Хостинг сайтов вызывает виджет с помощью тега javascript:

<script type="text/javascript" src="http://www.link.com/page.php?param=1"></script>

Проблема в том, что мой виджет имеет вид utf-8 и иногда он отличается от сайтов, на которых он размещен, в результате чего виджет отображает бессмысленный текст.

У кого-нибудь есть способ починить его, чтобы он работал при любых обстоятельствах?

Спасибо!

1 Ответ

1 голос
/ 01 февраля 2009

добавить заголовок http с кодировкой содержимого (быстро написано на моем iPhone)

Позвольте мне объяснить это немного подробнее (запись на моем ноутбуке ;-). Браузер запрашивает разные ресурсы с серверов. Каждый браузер внутренне использует Unicode для представления данных для отображения. Каждый ресурс, поступающий с веб-сервера (html-страница, файлы javascript, файлы css и т. Д.), Может иметь информацию о кодировании, прикрепленную в заголовке http. Если он имеет заголовок с кодировкой содержимого, браузер преобразует ресурс во внутреннее представление Unicode, используя кодировку из заголовка ответа. Если заголовок кодировки содержимого отсутствует, браузер предполагает, что кодировка файла совпадает со страницей, которая запросила ресурс.

Заключение: если у вас есть сценарий, который подается с веб-сервера и используется на страницах с другой кодировкой, убедитесь, что в этот сценарий добавлен заголовок http с кодировкой содержимого.

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