Как использовать изображение в Adaptive Card без прямого URL к изображению - PullRequest
0 голосов
/ 11 ноября 2018

Я хотел бы использовать изображение профиля пользователя из MS graph в адаптивной карточке. Я определил вызов API, который мне нужно сделать, следующим образом:

https://developer.microsoft.com/en-us/graph/docs/api-reference/beta/api/profilephoto_get

В этом случае я получу изображение в виде двоичных данных для фотографии профиля, которую необходимо преобразовать в строку base-64.

Но, основываясь на документе схемы адаптивных карт , похоже, что мы должны использовать свойство URL, где значение должно быть прямым URL к изображению

'строка URL-адреса Да URL к изображению'

Как мне подойти к этому? Есть ли способ использовать ИЗОБРАЖЕНИЕ в Adaptive Card без прямого URL-адреса изображения?

1 Ответ

0 голосов
/ 12 ноября 2018

Вы можете использовать URI данных для кодирования байтов непосредственно в полезную нагрузку. Что-то вроде этот образец :

var photo = await client.Me.Photos[size].Content.Request().GetAsync();

var photoStream = new MemoryStream();
photo.CopyTo(photoStream);

var photoBytes = photoStream.ToArray();

return string.Format("data:image/png;base64,{0}",
    Convert.ToBase64String(photoBytes));
...