如何在C#中将form-data类型API请求体转换为Json格式

问题描述 投票:0回答:1

我需要存储应用程序的 API 请求和响应正文,但问题是表单数据类型的请求以某种不同的格式存储

我刚刚尝试了这段代码,它从正文中删除了一些数字和线条

var requestTime = DateTime.Now;
var requestBodyContent = await ReadRequestBody(request);
int bcode = requestBodyContent.IndexOf("Content-Disposition:");
if (bcode > 0)
{
    string jung1 = requestBodyContent.Substring(0, bcode - 1);
    requestBodyContent = requestBodyContent.Replace(jung1, "");
}
context.Items["Guid"] = GUID;

requestBodyContent = requestBodyContent.Replace("Content-Disposition: form-data; name=", "");

其给出的响应如下

“用户ID”

2

“设备 ID”

126

“VentorId”

23

“用户名”

我需要以 json 格式获取请求正文以存储在我的数据库中 如何将其转换为json格式或者有什么方法可以直接将form-data转换为json?

c# .net api asp.net-core .net-core
1个回答
0
投票

[FromForm]
属性应用于您的操作参数。

指定应使用请求正文中的表单数据绑定参数或属性。

并使用 System.Text.Json/Newtonsoft.Json 等 JSON 库进行序列化。

using System.Text.Json;

public IActionResult YourControllerAction([FromForm] YourRequestModel request)
{
   ...

   string serializedRequestContent = JsonSerializer.Serialize(request);

   ...
}

参考:模型绑定

© www.soinside.com 2019 - 2024. All rights reserved.