gpt4 book ai didi

c# - 在 ASP.NET Core 2.0 Web Api 中返回 "raw"json

转载 作者:IT老高 更新时间:2023-10-28 12:52:50 27 4
gpt4 key购买 nike

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 .我们在 Controller 上使用 [Produces("application/json")]

如何将我拥有的 JSON 作为普通 JSON 内容类型返回而不被转义?

注意:如何获取 JSON 字符串并不重要,它可能来自 3rd 方服务,或者有一些特殊的序列化需求,因此我们想要进行自定义序列化而不是使用默认的 JSON .NET 序列化程序。

最佳答案

当然,在发布问题几分钟后,我偶然发现了一个解决方案:)

只需返回 Content 内容类型为 application/json...

return Content("{ \"name\":\"John\", \"age\":31, \"city\":\"New York\" }", "application/json");

关于c# - 在 ASP.NET Core 2.0 Web Api 中返回 "raw"json,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48336680/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com