URL Кодировщик / Декодер
Информация
URL Encoder / Decoder — это бесплатный инструмент позволяющий кодирование и кодирование URL адрес, простой онлайн-инструмент, который делает именно то, что он говорит: декодирует из URL-кодирования, а также кодирует в него быстро и легко. URL-кодируйте свои данные без проблем или декодируйте их в удобочитаемый формат.
Подробные сведения о типах кодирования URL-адресов символов URI символы, разрешенные в URI, либо зарезервированы, либо не зарезервированы (или символ процента как часть процентной кодировки). Зарезервированные символы-это символы, которые иногда имеют особое значение. Например, символы прямой косой черты используются для разделения различных частей URL-адреса (или, в более общем смысле, URI). Незарегистрированные символы не имеют такого особого значения. При использовании процентного кодирования зарезервированные символы представляются с помощью специальных последовательностей символов. Наборы зарезервированных и незафиксированных символов и обстоятельства, при которых определенные зарезервированные символы имеют особое значение, немного изменялись с каждым новым пересмотром спецификаций, регулирующих URI и схемы URI.
! |
* |
' |
( |
) |
; |
: |
@ |
& |
= |
+ |
$ |
, |
/ |
? |
# |
[ |
] |
A |
B |
C |
D |
E |
F |
G |
H |
I |
J |
K |
L |
M |
N |
O |
P |
Q |
R |
S |
T |
U |
V |
W |
X |
Y |
Z |
a |
b |
c |
d |
e |
f |
g |
h |
i |
j |
k |
l |
m |
n |
o |
p |
q |
r |
s |
t |
u |
v |
w |
x |
y |
z |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
- |
_ |
. |
~ |
Другие символы в URI должны быть закодированы в процентах.
Зарезервированные символы в процентном кодировании
Когда символ из зарезервированного набора («зарезервированный символ») имеет особое значение («зарезервированная цель») в определенном контексте, и схема URI указывает, что необходимо использовать этот символ для какой-либо другой цели, тогда символ должен быть закодирован в процентах. Процентное кодирование зарезервированного символа означает преобразование символа в соответствующее значение байта в ASCII, а затем представление этого значения в виде пары шестнадцатеричных цифр. Цифры, которым предшествует знак процента («%»), затем используются в URI вместо зарезервированного символа. (Для символа, не являющегося символом ASCII, он обычно преобразуется в последовательность байтов в UTF-8, а затем каждое значение байта представляется, как указано выше.)
Зарезервированный символ «/», например, если он используется в компоненте URI «путь», имеет особое значение как разделитель между сегментами пути. Если в соответствии с данной схемой URI «/» должен находиться в сегменте пути, то в сегменте вместо «/» должны использоваться три символа «%2F» (или «%2f»).
! |
# |
$ |
& |
' |
( |
) |
* |
+ |
, |
/ |
: |
; |
= |
? |
@ |
[ |
] |
%21 |
%23 |
%24 |
%26 |
%27 |
%28 |
%29 |
%2A |
%2B |
%2C |
%2F |
%3A |
%3B |
%3D |
%3F |
%40 |
%5B |
%5D |
Зарезервированные символы, которые не защищены цели в конкретном контексте, также могут быть закодированы в процентах, но не семантически отличается от других персонажей.
В компонент «запрос» в URI (часть после того, как символ»?»), например, «/» до сих пор считается зарезервированным символом, но оно обычно не имеет зарезервированного цели (если конкретной схемы URI не указано иначе). Символ не нужно кодировать в процентах, если у него нет зарезервированной цели.
URI, которые отличаются только тем, закодирован ли зарезервированный символ в процентах или нет, обычно считаются неэквивалентными (обозначающими один и тот же ресурс), если только указанные зарезервированные символы не имеют зарезервированной цели. Это определение зависит от правил, установленных для зарезервированных символов отдельными схемами URI.
Неограниченные символы в процентном кодировании
Символы из неограниченного набора никогда не должны быть закодированы в процентах.
URI, которые отличаются только тем, закодирован ли незафиксированный символ в процентах или нет, эквивалентны по определению, но процессоры URI на практике не всегда могут относиться к ним эквивалентно. Например, потребители URI не должны относиться к «%41» иначе, чем к «A» («%41»-это процентная кодировка «A») или «%7E» иначе, чем к»~», но некоторые это делают. Поэтому для обеспечения максимальной совместимости производителям URI не рекомендуется кодировать незафиксированные символы в процентах.
Кодирование в процентах символа процента
Поскольку символ процента («%») герой служит в качестве индикатора для процентов в кодировке октетов, это должны быть закодированы в процентах, как «%25» для октета используются в качестве данных в URI.
Процент-кодирование произвольных данных
наиболее Ури схемы предполагают представление произвольные данные, такие как IP-адрес или путь к файлу, в качестве компонентов URI. Спецификации схемы URI должны, но часто этого не делают, обеспечивать явное сопоставление между символами URI и всеми возможными значениями данных, представленными этими символами.
Двоичные данные
С момента публикации RFC 1738 в 1994 году было указано, что схемы, которые обеспечивают представление двоичных данных в URI, должны разделять данные на 8-разрядные байты и кодировать каждый байт в процентах таким же образом, как указано выше. Значение байта 0F (шестнадцатеричное), например, должно быть представлено «%0F», но значение байта 41 (шестнадцатеричное) может быть представлено «A» или «%41». Использование некодированных символов для буквенно-цифровых и других незафиксированных символов обычно предпочтительнее, поскольку это приводит к более коротким URL-адресам.
Символьные данные
Процедура кодирования двоичных данных в процентах часто экстраполировалась, иногда ненадлежащим образом или без полного указания, для применения к символьным данным. В годы становления Всемирной паутины, когда мы имели дело с символами данных в репертуаре ASCII и использовали соответствующие им байты в ASCII в качестве основы для определения последовательностей, закодированных в процентах, эта практика была относительно безвредной; многие люди предполагали, что символы и байты сопоставляются один к одному и взаимозаменяемы. Однако потребность в представлении символов за пределами диапазона ASCII быстро росла, и схемы и протоколы URI часто не обеспечивали стандартных правил подготовки символьных данных для включения в URI. В результате веб-приложения начали использовать различные многобайтовые, статусные и другие кодировки, не совместимые с ASCII, в качестве основы для процентного кодирования, что привело к неоднозначностям, а также к трудностям надежной интерпретации URI.
Например, многие схемы и протоколы URI, основанные на RFC 1738 и 2396, предполагают, что символы данных будут преобразованы в байты в соответствии с некоторой неопределенной кодировкой символов, прежде чем будут представлены в URI незафиксированными символами или байтами в процентном кодировании. Если схема не позволяет URI указывать, какая кодировка использовалась, или если кодировка противоречит использованию ASCII для процентного кодирования зарезервированных и незафиксированных символов, то URI не может быть надежно интерпретирован. Некоторые схемы вообще не учитывают кодировку и вместо этого просто предполагают, что символы данных напрямую сопоставляются с символами URI, что позволяет отдельным пользователям решать, следует ли и как кодировать символы данных в процентах, которые не входят ни в зарезервированные, ни в незарегистрированные наборы.
" |
% |
- |
. |
< |
> |
\ |
^ |
_ |
` |
{ |
| |
} |
~ |
||
%0A %0D %0D%0A |
%20 |
%22 |
%25 |
%2D |
%2E |
%3C |
%3E |
%5C |
%5E |
%5F |
%60 |
%7B |
%7C |
%7D |
%7E |
Произвольные символьные данные иногда кодируются в процентах и используются в ситуациях, не связанных с URI, например, для программ запутывания паролей или других системных протоколов перевода.