Я разрабатываю приложение UWP для отображения отчетов, которые я создал для пользователя. Однако я не могу представить необходимый токен безопасности для аутентификации отчета после того, как у меня есть его URL для встраивания.Как интегрировать отчет Power BI в приложение UWP C#
Я попытался включить отчет в iFrame в веб-браузере, чтобы отобразить его в подобном стиле для веб-приложения, однако iFrame не загружает публичный отчет по сравнению с веб-просмотром, который может.
Любые примеры, похоже, используют JwtSecurityToken, но в настоящее время они не совместимы с приложениями UWP.
using System.IdentityModel.Tokens;
public string Generate(string accessKey = null)
{
if (string.IsNullOrWhiteSpace(this.AccessKey) && accessKey == null)
{
throw new ArgumentNullException(nameof(accessKey));
}
accessKey = accessKey ?? this.AccessKey;
var key = Encoding.UTF8.GetBytes(accessKey);
var signingCredentials = new SigningCredentials(new InMemorySymmetricSecurityKey(key), SecurityAlgorithms.HmacSha256Signature, SecurityAlgorithms.Sha256Digest);
var token = new JwtSecurityToken(this.Issuer, this.Audience, this.Claims, DateTime.UtcNow, this.Expiration, signingCredentials);
return new JwtSecurityTokenHandler().WriteToken(token);
}
Есть ли способ обойти этот пакет, не делая сообщения вставлять URL общедоступным? Или, возможно, способ включить его в приложение? Любые предложения будут оценены.
Что вы подразумеваете под "iFrame не загружает публичный отчет по сравнению с веб-просмотром, который может"? На самом деле я могу загрузить завершенный отчет в WebView, может быть, скриншот полезен для понимания вашей проблемы. –
@ FranklinChen-MSFT, если у меня есть iFrame в моем WebView (что было сделано, чтобы я мог использовать функцию JavaScript PostMessage), тогда это невозможно для загрузки общедоступного отчета, тогда как WebView без iFrame может. – sparksy64