ASP中返回数据的标准方法.NET核心Web Api使用IActionResult,并提供例如OkObject的结果.这对对象很管用,但是如果我以某种方式获得了一个JSON字符串,并且只想将该JSON返回给调用者呢?

e.g.

public IActionResult GetSomeJSON()
{
    return Ok("{ \"name\":\"John\", \"age\":31, \"city\":\"New York\" }");
}

What ASP.NET Core does here is, it takes the JSON String, and wraps it into JSON again (e.g. it escapes the JSON)

通过提供"原始"内容,返回[Produces("text/plain")]的纯文本确实有效,但它也将响应的内容类型设置为纯文本,而不是JSON.我们在控制器上使用[Produces("application/json")].

如何在不转义的情况下返回作为普通JSON内容类型的JSON?

Note: It doesn't matter how the JSON string was aquired, it could be from a 3rd party service, or there are some special serialization needs so that we want to do custom serialization instead of using the default JSON.NET serializer.

推荐答案

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

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

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

Json相关问答推荐

最新版本的Deneb在数据溢出时不支持滚动

PostgreSQL:删除 JSONB 数组中每个元素的特定键

GitHub Pages无法正确显示我的项目

Delphi 11.3无法从变体创建/添加JSON

如何将复杂的 JSON 反序列化为 Rust 类型?

如何在 Flutter 中遍历嵌套的动态 JSON 文件

是否可以在有条件的情况下将 json 对象转换为 JOLT 中的数组?

如何在 Postman 中匹配 json 响应中的内容?并可视化

从 JSON 响应中获取最新版本发布字段

jq:用列表包装所有第一级原子值

使用 jq Select 键:值并输出为数组

如何判断字符串是否为json格式

.NET 对象最灵活的序列化是什么,但实现起来很简单?

在 JSON.stringify() 的输出中隐藏空值

在 Jersey 服务中使用 JSON 对象

在 JSON.NET 中序列化派生类时的字段顺序

有 Json 标签但未导出

python追加到json对象中的数组

如何从 MVC 控制器返回 Json 对象以查看

Backbone.js 模型与集合