Если в заголовке Content-Type не указан параметр charset, RFC2616, раздел 3.7.1, по-видимому, подразумевает, что ISO8859-1 следует использовать для медиа-типов текста подтипа:
Когда отправитель не предоставляет явного параметра набора символов, подтипы мультимедиа текстового типа определяются так, чтобы иметь значение набора символов по умолчанию ISO-8859-1 при получении через HTTP.
Данные в наборах символов, отличных от ISO-8859-1 или его подмножеств, ДОЛЖНЫ быть помечены соответствующим значением набора символов.
Тем не менее, я регулярно вижу приложения, которые обслуживают файлы Javascript со значениями Content-Type, такими как application/x-javascript (т. е. без параметра charset), даже если эти сценарии содержат символы, отличные от ASCII UTF-8, которые будут повреждены, если интерпретируются как ISO8859. -1.
Кажется, это не создает проблем для клиентов. Как клиенты узнают, что байты следует интерпретировать как UTF-8? Существует ли правило для других подтипов символьных данных, которое подразумевает, что UTF-8 должен использоваться по умолчанию? Где это задокументировано?