[Route("api/[controller]")]
[ApiController]
public class UserController : ControllerBase
{
[HttpGet]
public string GetUserName()
{
return User.Identity.Name;
}
}
确保 Web API Core 项目已配置好认证,例如使用 Windows 身份验证。
在 Blazor WASM 项目中,使用以下代码调用 Web API Core 中定义的 GetUserName 方法并显示用户名:
@page "/"
@inject HttpClient Http
Welcome, @userName!
@code {
private string userName;
protected override async Task OnInitializedAsync()
{
var response = await Http.GetAsync("api/user");
response.EnsureSuccessStatusCode();
var content = await response.Content.ReadAsStringAsync();
userName = content.Trim('"');
}
}