在c#中将对象转换为Json并通过POST发送会导致对象损坏

本文关键字:对象 POST 损坏 转换 Json | 更新日期: 2023-09-27 18:14:45

在c#中,我正在打印发送到控制台的jsonfied字符串,它读作

 { "message" : "done", "numSlides" : 1, "slides" : [{ "num" : 1, "key" : "530d8aa855df0c2d269a5a5853a47a469c
52c9d83a2d71d9/1slide/Slide1_v8.PNG" }], "bucket" : "xx.xxxxxxxxxx", "error"
: null, "wedge" : false, "tenant" : null, "name" : null }

然后将其转换为字节数组并发送

WebRequest request = WebRequest.Create(Program.api +"/"+ route);
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
//Get the request stream
Stream dataStream = request.GetRequestStream();
byte[] byteArray = Encoding.UTF8.GetBytes(myString);
dataStream.Write(byteArray, 0, byteArray.Length);
dataStream.Close();

在node.js端,我得到这个当控制台。日志res.body:

{ '{ "message" : "done", "numSlides" : 1, "slides" : ': { '{ "num" : 1, "key" : "530d8aa855df0c2d269a5a5853a47a469c52c9d83a2d71d9/1slide/Slide1_v8.PNG" }], "bucket" : "xx.xxxxxxxxxx", "error" : null, "wedge" : false, "tenant" : null, "name" : null ': '' } }

这看起来不像有效的JSON。发生了什么事?我如何发送和接收适当的数据?

在c#中将对象转换为Json并通过POST发送会导致对象损坏

我在测试我正在编写的节点服务器时遇到了类似的问题。问题最终与请求的内容类型有关。我相信这可能也是你的问题。

我认为你想要的内容类型是"application/json"。

查看这篇文章了解更多信息