在ASP.NET Core 2.0 Web Api中返回“原始” json
AFAIK在ASP.NET Core Web
Api中返回数据的标准方法是使用IActionResult
并提供例如OkObject
结果。这对对象很好用,但是如果我以某种方式获得了JSON字符串,而我只想将该JSON返回给调用者怎么办?
例如
public IActionResult GetSomeJSON(){
return Ok("{ \"name\":\"John\", \"age\":31, \"city\":\"New York\" }");
}
ASP.NET Core在这里所做的是,它接收JSON字符串,然后再次将其包装到JSON中(例如,它转义了JSON)
返回纯文本[Produces("text/plain")]
确实可以通过提供“
RAW”内容来工作,但是它还将响应的内容类型设置为PLAIN而不是JSON。我们[Produces("application/json")]
在控制器上使用。
如何在不转义的情况下以普通的JSON内容类型返回JSON?
注意:JSON字符串的获取方式无关紧要,它可以来自第三方服务,也可以有一些特殊的序列化需求,因此我们希望进行自定义序列化,而不是使用默认的JSON.NET序列化器。
回答:
当然,在发布问题几分钟后,我偶然发现了一个解决方案:)
只需返回Content
内容类型application/json
…
return Content("{ \"name\":\"John\", \"age\":31, \"city\":\"New York\" }", "application/json");
以上是 在ASP.NET Core 2.0 Web Api中返回“原始” json 的全部内容, 来源链接: utcz.com/qa/428177.html