当前位置: 首页 > 知识库问答 >
问题:

在REST API中取消json响应

司宏伯
2023-03-14

我有一个用C#编写的REST API。方法DoQuery将查询发送到数据库,并获得json作为响应

public async Task<QueryResponseDto> DoQuery(string request)
{
  return await _dbConnection.QuerySingleAsync<QueryResponseDto>("select web.json_request('" + request + "') as response;",commandTimeout:600);
}
...
[HttpPost]
[Route("DoQuery")]
public async Task<string> DoQuery([FromBody] object body)
{
  var r = await _dataService.DoQuery(JsonSerializer.Serialize(body));
  return r.response;
}
[
   {
      "contractor":{
         "ek2id":"91707d21-50f3-4aa4-8209-e80b963da99d",
         "externalids":[
            {
               "externalsource":"SBL",
               "externalid":"1-4OB8C75"
            }
         ]
      }
   }
]
"[{\"contractor\":{\"ek2id\":\"91707d21-50f3-4aa4-8209-e80b963da99d\",\"externalids\":[{\"externalsource\":\"SBL\",\"externalid\":\"1-4OB8C75\"}]}}]"

共有1个答案

权韬
2023-03-14

当您查询数据库时,它在显示输出时为您格式化JSON。数据库中的实际值可以是某种UTF8或类似的编码。

如果escape导致了问题,您可以尝试在字符串中为引号存储实际的UTF8值。但在这两种情况下,都需要对响应进行编码。

 类似资料:
  • 我有一个管理Web应用程序位于远程服务器上。这个应用程序是使用MEAN堆栈编写的,我有一个连接到网络应用程序所需的所有RESTful路由的列表。 我正在编写一个Java客户端应用程序,它需要从这个管理应用程序发送和接收数据。如果我有服务器的IP地址和REST路由,如何将客户端连接到web应用程序? 我想我需要提供一个到服务器和RESTAPI文件的URL连接,然后只需调用路由函数,如和。

  • 有人可以使用BeanShell后处理程序和正则表达式提取器来实现它,或者如果有的话,还有任何其他方法来实现同样的方法。

  • 问题内容: 我正在尝试将响应数组和响应数组转换为JSON格式。我已经试过被贴在SO和其他网站一样,所有的答案WEB1,web2的增加,然后 但我一直都想与文本格式的输出。有人可以帮我解决这个问题吗? 助手类: 我的控制器: 我尝试打印,它看起来像这样: Json输出:(html / text) 问题答案: 组 在控制器的动作之前。

  • 我是RESTWebServices开发新手。目前,我们正在使用Spring Boot、Spring JPA进行服务开发。在REST响应中,我很难返回选择性列。我的问题如下: 我有一个包含10行的用户表,其中包含以下列 Id 我的用户实体对象是: 我需要制定以下两个要求: 返回包含所有列的所有行 返回只有三列(Id、名称和手机号)的所有行 对于第一个需求,我可以通过使用JPA的findAll()来实

  • 我有一个API请求,它在数组中返回一个refresh_token,如下所示: 我需要访问这个refresh_token的值,并使用它来查询另一个API。 为此,我尝试首先“ReadAll”响应正文,然后通过调用“刷新令牌”访问其中的密钥。 然而,它不起作用。有没有人知道如何解决这个问题,因为我不明白? 这是我的代码: