Думаю, что проблема в функции декодирования base64 на JS. Для теста брал первую попавшуюся функцию с этого сайта, корректный результат был только со строкой в utf-8.
Строку оказывается можно передать как есть, изначально этот вариант почему-то не проверил нормально.
|