рдмреНрд▓реЗрдЬрд╝рд░ рдХреНрд▓рд╛рдЗрдВрдЯ рд╕рд╛рдЗрдб рдСрдирд▓рд╛рдЗрди рд╕реНрдЯреЛрд░: рднрд╛рдЧ 7 - рд╕рдВрд╕реНрдХрд░рдг 3.2.0 рдФрд░ рдЬреЛрдбрд╝рд╛ рдЫрд╡рд┐ рдкреНрд░рджрд░реНрд╢рди рдЬрд╛рд░реА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛



рдирдорд╕реНрдХрд╛рд░, рд╣реЗрдмреНрд░! Blazor WebAssemby рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдФрд░ рдореИрдВрдиреЗ рдЕрдкрдиреА рд╕рд╛рдЗрдЯ рдХреЛ рдереЛрдбрд╝рд╛ рдЕрджреНрдпрддрди рдХрд┐рдпрд╛ред рд╡рд┐рд╡рд░рдг рдХреЗ рд▓рд┐рдП, рдмрд┐рд▓реНрд▓реА рдореЗрдВ рдЖрдкрдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИред

рд╕рд╛рдордЧреНрд░реА



рд╕рдВрджрд░реНрдн


тЖТ  рд╕реНрд░реЛрдд
тЖТ рдбреЛрдХрд░ рд░рдЬрд┐рд╕реНрдЯреНрд░реА рдкрд░ рдЫрд╡рд┐рдпрд╛рдВ

рдЕрдкрдбреЗрдЯ


рдмреНрд▓реЗрдЬрд╝рд░ рдХреЗ рд░рд┐рд▓реАрдЬрд╝ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде рдПрдХ рдирдпрд╛ рдЯреЗрдореНрдкрд▓реЗрдЯ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ

dotnet new -i Microsoft.AspNetCore.Components.WebAssembly.Templates::3.2.0

HttpClient рдХреЗ рд╕рд╛рде рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдХрд╛рдо рдХреЗ рд▓рд┐рдП рдкреИрдХреЗрдЬ рдореЗрдВ рдПрдХ рд▓рд┐рдВрдХ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛

 <PackageReference Include="Microsoft.Extensions.Http" Version="3.1.3" />
 <PackageReference Include="System.Net.Http.Json" Version="3.2.0" />

HttpClient рдХреЛ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдирдпрд╛ рддрд░реАрдХрд╛ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИ рддрд╛рдХрд┐ рдпрд╣ рдЕрдкрдиреЗ рд╣реЗрдбрд░ рдореЗрдВ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдСрдерд░рд╛рдЗрдЬрд╝реЗрд╢рди рдЯреЛрдХрди рдкрдХрдбрд╝ рд╕рдХреЗ

services.AddHttpClient("BlazorEShop", client => 
        client.BaseAddress = new Uri(cfg.ApiUri))
    .AddHttpMessageHandler(sp =>
        sp.GetRequiredService<AuthorizationMessageHandler>()
            .ConfigureHandler(new[] { cfg.ApiUri },scopes: new[] { "api" }));
services.AddTransient(sp => 
    sp.GetRequiredService<IHttpClientFactory>().CreateClient("BlazorEShop"));

рдЦреИрд░, рд▓реЙрдЧ рдХрд╛ рд╕реНрддрд░ рдХрдо рд╣реЛ рдЧрдпрд╛ рд╣реИред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдЕрдм рдЗрд╕реЗ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдпрд╛ appsettings.json рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реЗрдЯ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ рдЬреЛ wwwroot рдореЗрдВ рдирд┐рд╣рд┐рдд рд╣реИред

 builder.Logging.SetMinimumLevel(LogLevel.Debug);


рд╡реНрд╣рд╛рдЯреНрд╕ рдиреНрдпреВ рдЗрди рдмреНрд▓реЗрдЬрд╝реЛрд░ рд╡реЗрдмрдЕрд╡реЗрд╢рди


рдЬреЛрдВрд╕ рдлрд╛рдЗрд▓реЛрдВ рдФрд░ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рд╕реЗ рд╡рд┐рдиреНрдпрд╛рд╕ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИред
.Resx рд╕рдВрд╕рд╛рдзрди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реНрдерд╛рдиреАрдпрдХрд░рдг
рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИред рдЕрдиреБрд░реЛрдз рдкрд░ рд╣реЗрдбрд░ рдореЗрдВ jwt рдЯреЛрдХрди рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЬреЛрдбрд╝рдирд╛ рд╕рдВрднрд╡ рд╣реИред
рдЕрдзрд┐рдХ рд╡рд┐рд╡рд░рдг рдЗрд╕ рд╡реАрдбрд┐рдпреЛ рдореЗрдВ рджреЗрдЦреЗ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ ред

рдЪрд┐рддреНрд░ рдЕрдкрд▓реЛрдб рдХрд░реЗрдВ


рдЕрдм рддрдХ, рдХреЗрд╡рд▓ рд╕реНрд╡реИрдЧрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗред

рд╣рдо рдКрдкрд░реА рджрд╛рдПрдВ рдХреЛрдиреЗ рдореЗрдВ рдЕрдзрд┐рдХреГрдд рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдХреЗ рдФрд░ рдирд┐рдЪрд▓реЗ рдмрд╛рдПрдВ рдХреЛрдиреЗ рдХреЛ рдкреЙрдк-рдЕрдк рд╡рд┐рдВрдбреЛ рдореЗрдВ рдЕрдзрд┐рдХреГрдд рдХрд░рддреЗ рд╣реИрдВред



рд╣рдо рдлрд╝рд╛рдЗрд▓ рдЕрдкрд▓реЛрдб рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЙрд╕ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рддреЗ рд╣реИрдВ рдЬреЛ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╡рд╛рдкрд╕ рдЖ рдЧрдпрд╛ рдерд╛ред рд╣рдо



рдЙрд╕ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдЬрд┐рд╕реЗ рдкрд┐рдЫрд▓реЗ рдЪрд░рдг рдореЗрдВ рдЗрдореЗрдЬрдЖрдИрдб рдХреЗ рд░реВрдк рдореЗрдВ рдХреЙрдкреА рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛


All Articles