31 lines
1 KiB
C#
31 lines
1 KiB
C#
using System;
|
|
using System.Net.Http;
|
|
using System.Threading.Tasks;
|
|
using Microsoft.AspNetCore.Components.WebAssembly.Authentication;
|
|
using Microsoft.AspNetCore.Components.WebAssembly.Hosting;
|
|
using Microsoft.Extensions.DependencyInjection;
|
|
using Blazored.LocalStorage;
|
|
|
|
namespace Start.Client {
|
|
public class Program {
|
|
public static async Task Main(string[] args) {
|
|
var builder = WebAssemblyHostBuilder.CreateDefault(args);
|
|
builder.RootComponents.Add<App>("#app");
|
|
|
|
builder.Services.AddHttpClient("Start.ServerAPI",
|
|
client => client.BaseAddress = new Uri(builder.HostEnvironment.BaseAddress))
|
|
.AddHttpMessageHandler<BaseAddressAuthorizationMessageHandler>();
|
|
|
|
// Supply HttpClient instances that include access tokens when making requests to the server project
|
|
builder.Services.AddScoped(sp => sp.GetRequiredService<IHttpClientFactory>()
|
|
.CreateClient("Start.ServerAPI"));
|
|
|
|
builder.Services.AddApiAuthorization();
|
|
|
|
builder.Services.AddBlazoredLocalStorage();
|
|
|
|
await builder.Build().RunAsync();
|
|
}
|
|
}
|
|
}
|