В настоящее время у меня есть приложение, работающее с клиентом angular, использующее веб-API с аутентификацией Windows.
Теперь я собираюсь заменить этот интерфейс на Blazor (на стороне клиента), однако я сталкиваюсь с некоторыми проблемами, когда дело доходит до аутентификации.
В угловом режиме я просто установил withCredentials вtrue для того, чтобы предоставить необходимую информацию.
Приведенный ниже код работает должным образом с использованием серверной части Blazor, но, поскольку я хочу использовать клиентскую часть Blazor, это не вариант и мне мало чем помогает.
IEnumerable<SearchView> searchResults;
int NumberOfItems;
protected override async Task OnInitAsync()
{
using (var client = new HttpClient(new HttpClientHandler() { UseDefaultCredentials = true }))
{
var result = await client.GetJsonAsync<Response<SearchView>>("http://localhost:80/search");
NumberOfItems = result.TotalItemCount;
searchResults = result.Items;
}
}
}
Приведенный выше код вызывает исключение PlatformNotsupportedException.
WASM: System.PlatformNotSupportedException: System.Net.Http.HttpClientHandler не поддерживается на текущей платформе.WASM: в System.Net.Http.HttpClientHandler.set_UseDefaultCredentials (значение System.Boolean) <0x1d63160 + 0x0000c> в <4399d2484a2a46159ade8054ed94c78e>: 0
Очевидно, что поддерживается клиент, если не поддерживается код, если используется Blase, если не поддерживается код, если не поддерживается Blaz, если предоставлен код, если не поддерживаетсяЕсть любые альтернативные способы достижения того, чего я хочу, любые указания и помощь будут оценены.