17 февраля 2012 г.

Base64 quirks

Оказывается Base64 разные версии бывают. И вот на одном проекте всплыла особенность этого стандарта кодирования, заключающаяся в том, что по-умолчанию, в результирующей закодированной строке могут содержаться символы '+' и '/', которые, при передаче, например, через GET - преобразовываются веб-сервером в '+' → '%2B', '/' → '%2F'.
В данном случае можно либо преобразовывать сущности обратно в нормальный вид, либо использовать Base64 для URL, в котором '+' и '/' заменены на '-' и '_' соответственно, которые уже затем нормально можно использовать в дальнейших целях без дополнительных обработок.

Комментариев нет:

Отправить комментарий