繁体   English   中英

如何将 JSON 对象转换为表单数据并将其作为数据发送到 web api fetch

[英]how to convert the JSON object into form data and send it as Data to web api fetch

我在客户端有一个 json 对象,我想在 Web api 控制器中接收它,如controllerContext.HttpContext.Request["Name"]如何从 Web API 发送该 Json。

获取 api 的数据应为“name=abc&type=xyz” 如何转换JSON对象

 { name: abc, type:xyz }

下面的代码不起作用

 { method: 'POST', headers: { Accept: 'application/json', 'Content-Type': 'application/json' }, credentials: 'same-origin', body: JSON.stringify({ name:abc, type:xyz }) };
如下替换正文和标题工作正常

 body: "name=abc&type=xyz" headers: new Headers({ 'Content-Type': 'application/x-www-form-urlencoded', // <-- Specifying the Content-Type }

如何如上所述转换 Json 对象,原因是什么。?

我不知道ASP.NET,但我相信有一种方法可以将数据类型配置为JSON,而不是采用表单编码。 或者,您需要自定义服务器解析数据的方式。

如果不能更改为application / json。 您可以使用querystring包将JSON obj字符串化为urlenconded格式。

你能分享你的 .NET 代码吗?

请求正文不像参数那样取值!

Body 应该从 JSON 中获取数据。

您可以使用 [FromBody] 属性! 或者可以为此创建一个 DTO。 DTO 应该自动处理这个问题!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM