如何从 Web Api 获取请求和响应并将其保存到数据库

Posted

技术标签:

【中文标题】如何从 Web Api 获取请求和响应并将其保存到数据库【英文标题】:How to get request and response from Web Api and save it to the database 【发布时间】:2021-11-25 17:27:34 【问题描述】:

我在下面的Controller类中有一个方法:

    [HttpGet]
    [ResponseType(typeof(RsContractCustomer))]
    [Route("api/Contract/GetCustomerData/cardModificationId")]
    public async Task<IHttpActionResult> GetCustomerData([FromUri] int cardModificationId)
    
        var jsonIgnoreNullValues = JsonConvert.SerializeObject(await _bs.GetCustomer(cardModificationId), Newtonsoft.Json.Formatting.Indented, new JsonSerializerSettings
        
            NullValueHandling = NullValueHandling.Ignore
        );

        JObject jObject = JObject.Parse(jsonIgnoreNullValues);
        return Ok(jObject); //await _bs.GetCustomerData(id));
    

现在我想获取HttpResponseMessage 并将特定部分保存到数据库中。我应该在这些代码中添加什么或实现中间件来获得这个?

【问题讨论】:

【参考方案1】:

HttpReponseMessage 在客户端接收(中间件和控制器在服务器端)。

在客户端项目中你可以这样写:

        HttpClient client = new HttpClient();

        HttpResponseMessage response = await client.GetAsync("http://localhost:8080/api/contract/getcustomerdata/1");

        var customer = await response.Content.ReadAsAsync<RsContractCustomer>();

        // Save to DB

【讨论】:

以上是关于如何从 Web Api 获取请求和响应并将其保存到数据库的主要内容,如果未能解决你的问题,请参考以下文章

如何读取从 API 检索到的 JSON 并将其保存到 CSV 文件中?

如何开始使用 nextjs 获取每个应用程序的数据

如何获取 fetch api 的字符串响应并将其分配给变量?

如何从 API 转换一些 RAW 数据并将其保存到变量中,以便我可以在 C# 中使用它们

如何在Vapor 3中从JSON响应中保存父子关系

如何在过期之前获取新的 FacebookSDKAccessToken?