【发布时间】:2017-08-15 13:25:56
【问题描述】:
我有一个刚刚从 1.1 更新到 2.0 的 .Net Core 应用程序。 我遇到的问题是返回的 json。 json 包含一个 JavaScript Web 令牌 (JWT)。
我的控制器端点看起来像这样......
[Microsoft.AspNetCore.Mvc.Route("getToken")]
[Microsoft.AspNetCore.Authorization.AllowAnonymous]
public IActionResult Post([Microsoft.AspNetCore.Mvc.FromBody] ApplicationUser applicationUser)
{
var authTokenJson = _authTokenService.GetTokenJson(_jwtOptions, applicationUser);
return Ok(authTokenJson.Result);
}
在 1.1 版本下,来自该端点的响应在浏览器控制台中打印时如下所示...
升级到 2.0 后,它现在看起来像这样......
请注意,属性名称现在用引号引起来。这会导致尝试处理对象的前端 AngularJS 应用程序出现问题。
有谁知道为什么会发生这种情况以及如何解决它?
【问题讨论】:
-
".Net Core 2.0 API 返回带有引号的 json" 好!那是有效的JSON。请注意,您在第一个屏幕截图中看到的不是 JSON,而是一个已解析的对象。您的第二个屏幕截图可能是 JSON(在字符串中),但很难从中分辨出来。所以这就是你需要弄清楚的:为什么它不再被解析了?
标签: .net json asp.net-web-api asp.net-core-2.0