C# 从HttpRequest主体读取字节数组

C# 从HttpRequest主体读取字节数组,c#,.net,json,json.net,C#,.net,Json,Json.net,我试图从HttpRequest post正文中检索字节数组。帖子正文包含具有两个属性的对象。1.“Id”的类型为string和2。“数据”的类型为字节[] Data属性包含使用以下代码转换为字节数组的文件数据: Data = File.ReadAllBytes("fileName"); var responseObj = JObject.Parse(await new StreamReader(request.Body).ReadToEndAsync()); string id = resp

我试图从HttpRequest post正文中检索字节数组。帖子正文包含具有两个属性的对象。1.“Id”的类型为
string
和2。“数据”的类型为
字节[]

Data属性包含使用以下代码转换为字节数组的文件数据:

Data = File.ReadAllBytes("fileName");

var responseObj = JObject.Parse(await new StreamReader(request.Body).ReadToEndAsync());

string id = responseObj["Id"].Value<string>();
var data= responseObj["Data"].Value<byte[]>();
Data=File.ReadAllBytes(“文件名”);
var responseObj=JObject.Parse(等待新的StreamReader(request.Body).ReadToEndAsync());
字符串id=responseObj[“id”].Value();
var data=responseObj[“data”].Value();

最后一行代码给了我一个异常。我正在尝试将字节数组存储到一个文件中,然后在稍后的阶段进行检索。

我猜您正在使用HttpClient类发出请求。

就这么简单:


var contents=wait response.Content.ReadAsByteArrayAsync()

这些字节可能是字符串编码的。您需要弄清楚该编码是什么(base64或十六进制或其他),然后可以将其解析为字节数组。如果您需要更多帮助,您需要发布可以实际解析的示例json内容(不仅仅是随机数据,这对任何人都没有任何好处)。microsoft页面上没有足够的文档。“打开一个二进制文件,将文件内容读入字节数组,然后关闭文件。”第一行代码与您的问题无关,对吗<代码>数据未被示例中的其他代码行引用,最后一行代码引发异常。据我所知,这个问题与最后一行代码有关,我的第一个评论是关于这行代码。解析后的json对象包含二进制数据,但它是经过编码的,您需要弄清楚该编码是什么,以便将其转换为字节数组。是的,我的代码中没有使用第一行代码。另一个团队正在使用File.ReadAllBytes创建字节数组并发布数据。我正在读它。你能举一个JSON数据的例子吗?假设
JObject.Parse
行工作正常,则转储
responseObj.ToString()
。我特别感兴趣的是JSON中的
Data
属性是什么样子的,即它是整数数组还是base64字符串?内容包含Id和数据。我只希望数据作为字节数组,而不是整个内容。