set_decode_base64url

Директива `set_decode_base64url` декодирует Base64 URL-кодированные данные в их исходный вид для дальнейшей обработки.

Синтаксисset_decode_base64url $variable $encoded_string;
По умолчаниюnone
Контекст
Аргументы2

Описание

Директива set_decode_base64url преимущественно используется в контексте обработки SRT (Secure Reliable Transport) потоков в NGINX. Она принимает два параметра: переменную, в которую будет записано декодированное значение, и строку, закодированную в Base64 URL, которую требуется декодировать. Когда эта директива выполняется при обработке запроса, она сначала интерпретирует указанную Base64 URL-кодированную строку и декодирует её в исходное байтовое представление. Эта операция критична в сценариях, где целостность данных имеет первостепенное значение, например при передаче медиапотоков по SRT, поскольку она позволяет передавать бинарные данные в текстобезопасном формате. Декодированное значение затем может использоваться при последующей обработке или передаваться на upstream servers.

Кроме того, важно отметить, что Base64 URL кодирование — это вариант Base64, который заменяет некоторые символы для обеспечения безопасности в URL: он использует '-' вместо '+' и '_' вместо '/'. Соответственно, эта директива учитывает эти изменения в своём алгоритме декодирования. Это гарантирует, что любые данные, закодированные в этом формате, могут быть точно восстановлены до исходного состояния и использованы в транспортном слое или в логике приложения.

Пример конфига

set_decode_base64url $decoded_data 'SGVsbG8gd29ybGQh';

Убедитесь, что Base64 URL encoded string корректна; некорректная строка приведет к ошибке при обработке.

Учтите контекст, в котором используется эта директива; она может быть недоступна во всех server blocks или в некоторых конфигурациях.

← Ко всем директивам