HTTP, RFC 3986 и браузеры
2010-04-02 17:23:50 Рубрика : Web-разработка
Протокол HTTP 1.1 описан в документе rfc2616, в котором так же вводится понятия absoluteURI и abs_path, определение которых описано в rfc2396 «Uniform Resource Identifiers (URI): Generic Syntax», замененный в 2005 году rfc3986 «Uniform Resource Identifier (URI): Generic Syntax».
Хочу обратить внимание на две вещи, которые описаны в rfc3986:
- URI состоит из ограниченного набора символов (подмножества US-ASCII с кодами 0-127).
- Кодировка UTF-8 является предпочтительной перед другими, т.к. новые схемы URI должны представляться в универсальной кодировке UTF-8 (When a new URI scheme defines a component that represents textual data consisting of characters from the Universal Character Set [UCS], the data should first be encoded as octets according to the UTF-8 character encoding).
Так же, документ rfc3987 определяет понятие IRI (Internationalized Resource Identifier), которые отличаются от URI возможностью включения unicode-символов в свой состав, определяет отображение IRI в URI с использованием UTF-8. Одним из очевидных местом использования IRI является адресная строка браузера, куда можно вводить ссылку с национальными и прочими символами, не входящими в US-ASCII.
На практике, браузеры могут отступать от требований, что показано ниже. >>