Я использую API , чтобы получить фотографию профиля пользователя из облака O365.На основании документа говорится, что ответ содержит * Двоичные данные запрошенной фотографии.*
Я хотел бы использовать это изображение для отображения в формате Data URI.Пример: -
"данные: изображение / png; base64, iVBORw0KGgoAAA ANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAAHAlEQVQI12P4 // 8 / w38GIAXDIBKE0DHxg0_0 * * * *это данные изображения в Base64.
Я не могу заставить кодировку Base64 работать для данных изображения, которые я получаю из API.Не уверен, правильно ли я использую необработанные двоичные img-данные и правильно преобразовываю их в Base64.
Для проверки: я загружаю свои данные URI здесь в онлайн-редактор, и они никогда не анализируют мои данные / изображение.Вместо этого, если я загружаю изображение сюда &, чтобы получить данные Base64, тогда загружаю URI в 1-й редактор, он отображается правильно.Таким образом, я предполагаю, что разговор Base64 не является правильным.
КОД в nodejs: -
let base64ImgTry1 = Buffer.from('binary-data-from-api').toString('base64')
//OR
var base64ImgTry2 = new Buffer('binary-data-from-api','binary').toString('base64');
let imgURI_1 = 'data:image/png;base64,' +base64ImgTry1
let imgURI_2 = 'data:image/png;base64,' +base64ImgTry1
ни один из этих imgURI_1, imgURI_2 не работает.Не уверен, что я ошибаюсь, используя двоичные данные из api.
Я также пробовал эту библиотеку NPM https://www.npmjs.com/package/image-data-uri
, в которой я использовал этот метод -> кодирование (data, mediaType) где данные были прямым ответом от API.
https://www.site24x7.com/tools/datauri-to-image.html