MVC项目中API的错误认证



我的解决方案有4个项目:

  • ASP。. NET Web Api
  • ASP。净MVC
  • 服务(这里我使用接口实现API的操作,包括登录和注册)
  • 域(模型类)

在API项目中,一切都有效,但当我在MVC项目中包含登录时,我得到这个错误:

处理请求时发生未处理的异常。

InvalidOperationException: No authenticationScheme was specified, and there is No defaultchallengesscheme found。默认方案可以使用AddAuthentication(string defaultScheme)或AddAuthentication(Action configureOptions)来设置。Microsoft.AspNetCore.Authentication.AuthenticationService。ChallengeAsync(HttpContext context, string scheme, AuthenticationProperties properties)

I使用JWT身份验证和IdentityUser。当我在MVC项目中调试登录时,返回令牌,但是当打开具有Authorize的视图时,我得到错误。有人能帮帮我吗?

代码登录在我的控制器在MVC项目:

[HttpPost]
public async Task<IActionResult> Login(Usuarios usuarios)
{
using (var httpClient = new HttpClient())
{
StringContent stringContent = new StringContent(JsonConvert.SerializeObject(usuarios), Encoding.UTF8, "application/json");
using (var response = await httpClient.PostAsync("https://localhost:xxxx/api/Usuarios/Login", stringContent))
{
string token = await response.Content.ReadAsStringAsync();
if (token == "Invalid credentials")
{
ViewBag.Message = "Incorrect UserId or Password!";
return Redirect("~/Usuarios/Login");
}
HttpContext.Session.SetString("JWToken", token);
}
return Redirect("~/ProfileUsers/UserProfile");
}
}

您需要在APS中创建一个方法Login。. NET MVC项目,并指出您的身份用户的索赔日期。

相关内容

  • 没有找到相关文章

最新更新