Skip to content

Latest commit

 

History

History
101 lines (77 loc) · 7.25 KB

2.3.1.3 URI\URL\URN.md

File metadata and controls

101 lines (77 loc) · 7.25 KB

URI/URL/URN

URI (Uniform Resource Identifier) - унифицированный идентификатор ресурса или полный адрес, по которому происходит обращение. В кратце, он позволяет идентифицировать какой-либо ресурс: физический (https://assets.habr.com/habr-web/img/favicons/favicon-16.png - файл на сервере) или абстрактный (https://www.youtube.com/watch?v=e_atyw0IDqg - его не существует).

URN (Uniform Resource Name) - единообразное название ресурса. Может по одному только названию дать вам ресурс (абстрактный или физический). Аналогия URN из жизни: паспорт РФ: Иванов Иван Иванович, паспорт серия 1234 номер 123456.

URL (Uniform Resource Locator) - унифицированный локатор ресурса или комбинация протокола и доменного имени. Пример: https://www.youtube.com. Аналогия URL из жизни: город N/улица M/квартира L

Составляющие URI

Endpoint - часть адреса, идущая после доменного имени (например, после .com/). Пример: /watch?v=e_atyw0IDqg

Query-параметры - часть URI, следующая после ?. Пример: ?v=e_atyw0IDqg

Существуют варианты использования параметров URL:

Стандарт URL использует набор символов US-ASCII. Является недостатком, поскольку разрешается использовать лишь латинские буквы, цифры и несколько знаков пунктуации.

Остальные символы необходимо перекодировать. Например, перекодироваться должны буквы кириллицы, буквы с диакритическими знаками (á, ë, ĉ), иероглифы и тп.

Перекодирующая кодировка описана в стандарте RFC 3986 и называется URL-encoding/URLencoded или percent‐encoding.

URL-коды зарезервированных символов:

Зарезервированные символы в URL используются для определенных целей в синтаксисе URL, требуют кодирования (encoding), чтобы избежать недоразумений или ошибок при передаче данных через интернет.

Символ Код UTF-8 Описание
пробел %20 Разделение текста
! %21 Разделяет части URL
* %2A Замена символов
' %27 Строковые параметры
( %28 Группировка
) %29 Группировка
; %3B Разделение параметров
: %3A Разделение схемы и пути
@ %40 Разделение пользователя и хоста
& %26 Разделение параметров запроса
= %3D Связь ключ-значение в параметрах
+ %2B Замена пробелов в запросах
$ %24 Специальные параметры
, %2C Разделение значений
/ %2F Разделение путей
? %3F Начало строки запроса
# %23 Указание на фрагмент страницы
[ %5B IPv6 адреса
] %5D IPv6 адреса

Русский алфавит кодов:

Символ Код UTF-8 Маленький символ Код UTF-8
А %D0%90 а %D0%B0
Б %D0%91 б %D0%B1
В %D0%92 в %D0%B2
Г %D0%93 г %D0%B3
Д %D0%94 д %D0%B4
Е %D0%95 е %D0%B5
Ё %D0%81 ё %D1%91
Ж %D0%96 ж %D0%B6
З %D0%97 з %D0%B7
И %D0%98 и %D0%B8
Й %D0%99 й %D0%B9
К %D0%9A к %D0%BA
Л %D0%9B л %D0%BB
М %D0%9C м %D0%BC
Н %D0%9D н %D0%BD
О %D0%9E о %D0%BE
П %D0%9F п %D0%BF
Р %D0%A0 р %D1%80
С %D0%A1 с %D1%81
Т %D0%A2 т %D1%82
У %D0%A3 у %D1%83
Ф %D0%A4 ф %D1%84
Х %D0%A5 х %D1%85
Ц %D0%A6 ц %D1%86
Ч %D0%A7 ч %D1%87
Ш %D0%A8 ш %D1%88
Щ %D0%A9 щ %D1%89
Ъ %D0%AA ъ %D1%8A
Ы %D0%AB ы %D1%8B
Ь %D0%AC ь %D1%8C
Э %D0%AD э %D1%8D
Ю %D0%AE ю %D1%8E
Я %D0%AF я %D1%8F

2.3.1.2 Rest API Theme | Back To iOSWiki Contents | 2.3.1.4 HTTP Methods Theme