首页 > 解决方案 > 访问模型状态错误 - Asp.Net web api 身份 - Angular 6 - Http Post 请求

问题描述

我正在发出一个 POST 请求以向 ASP.NET Web API 身份注册新用户详细信息 - 个人用户身份验证帐户,它工作正常,但如果用户名已经存在,它会在其响应正文的 ModelState 中返回错误跟随。我想以角度访问该错误到 console.log() 它。

{"Message":"The request is invalid.","ModelState":{"":["Name a@a.a is already taken.","Email 'a@a.a' is already taken."]}}

在 Angular 应用程序中 =>

this.http.post('http://localhost:57310/api/account/register', {password, confirmPassword, email})
.subscribe(data => {console.log(data);this.router.navigate(['/login'])},
(err:HttpErrorResponse)=>console.log(--?--));

我应该用什么来代替 --?--

更新1:

我试过JSON.stringify(err.error.ModelState)了,但它提供了

{"":["Name a@a.a is already taken.","Email 'a@a.a' is already taken."]}

但我只想

"Name a@a.a is already taken.","Email 'a@a.a' is already taken."

标签: angularasp.net-web-apiangular6

解决方案


如果您只对获取错误消息的详细信息感兴趣,请使用:

console.log(JSON.stringify(err))

查看它的属性和值。


推荐阅读