Декодирование Ruby Base 64 для кодирования Java Base 64 - PullRequest
0 голосов
/ 14 февраля 2019

У меня есть строка, которая закодирована в java с использованием

data = new String(Base64.getEncoder().encode(encVal), StandardCharsets.UTF_8);

Я получаю эти закодированные данные как ответ API.Я хочу, чтобы base64 расшифровал это в ruby.Я использую

Base64.strict_decode64(data)

для этого.но это не работает.Кто-нибудь может мне помочь с этим?

1 Ответ

0 голосов
/ 14 февраля 2019

Ваш Java-код верен:

byte[] encVal = "Hello World".getBytes();
String data = new String(Base64.getEncoder().encode(encVal), StandardCharsets.UTF_8);
System.out.println(data); // SGVsbG8gV29ybGQ=

SGVsbG8gV29ybGQ= правильно декодируется с использованием нескольких инструментов, например https://www.base64decode.org/.

Вы наблюдаете, что символы мусора, декодирующие ваше значение, вероятнее всего из-заошибка при создании byte[].Возможно, вы должны указать правильную кодировку при создании byte[].

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...