我对 Asp.NET 还很陌生,希望了解有关如何继续操作的更多信息。我有一个标准的 WebAPI 项目,其中包含标准天气模板 - 我正在尝试通过注册/登录来应用一些身份验证。我知道有一种方法可以让模板在创建项目时为您完成此操作,但对于 Web api 来说却没有不让你做我想要的本地数据库。
所以现在我已经附加了 Identity.UI 包,以便我可以访问此方法并生成身份表的迁移
services.AddDefaultIdentity<IdentityUser>()
.AddEntityFrameworkStores<ApplicationDbContext>();
这允许我使用 UserManager 注册用户并登录,我这样做:
if (!ModelState.IsValid) return BadRequest();
var result = await m_userManager.FindByNameAsync(user.Email);
var correct = await m_userManager.CheckPasswordAsync(result, user.Password);
if (!correct) return BadRequest();
return Ok(new { token = m_tokenService.BuildToken(user.Email) });
我的问题是通过 WebAPI 处理注册和登录的正确方法,因为顾名思义,Microsoft.AspNetCore.Identity.UI 包提供了用于登录/注册的剃刀页面,但我并不真正需要,这让我相信这是不正确的。这样做有缺点/问题吗,或者这是一种更干净的方法。
皈依舞