目前,我有这个正在运行的 Blazor(服务器项目),它只有一个按钮,可以发出 Web Api GET 请求,并且可以正常工作,没有任何问题。
这是我的ConfigureServices
方法
public void ConfigureServices(IServiceCollection services)
{
services.AddRazorPages();
services.AddServerSideBlazor();
services.AddSingleton<HttpClient>();
}
和我的Index.razor
@page "/"
@inject HttpClient http;
@using Models
<button @onclick="@GetMovies">Get Movies</button>
<table>
<thead>
<tr><th>Movie</th></tr>
</thead>
<tbody>
@foreach(var movie in @Movies)
{
<tr><td>@movie.MovieTitle</td></tr>
}
</tbody>
</table>
@code{
List<Movie> Movies;
private async Task GetMovies()
{
Movies = await http.GetJsonAsync<List<Movie>>("http://localhost:54124/api/Movies");
}
}
如何将 http://localhost:54124
放入单个位置(如全局变量)?在 ConfigureServices
方法中执行此操作吗?
最佳答案
您应该将其存储在appsettings.json
中。
如果您使用 WASM,appsettings.json
将位于 wwwroot
内。
要从中获取值,您可以检查 this question 我的答案根据 .net core 的版本而变化,并且有不止一种方法可以做到这一点。
关于c# - Blazor 的 Web api 基本 URL 的全局变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62812446/