接收HTTP POST请求的二进制数据在ASP.NET C#
题
这应该是非常微不足道,但对于原因,无法找到它。我张贴一些二进制数据到这样的形式,如ASP.NET的multipart / form-data的,我可以看到该请求被通过查看Request.InputStream接收:
------------------------------- 7cf2a327f01ae内容处置:形状数据; NAME = “DeviceID1”
一些二进制数据
------------------------------- 7cf2a327f01ae内容处置:形状数据; NAME = “DeviceID2”
一些二进制数据 ...
但是我无法找到我怎样才能检索每个部分作为的Request.Form(或Request.Params)集合的一部分。可能是什么问题?一个解决方法是使用一个文件名,然后从Request.Files检索,但我不知道什么是获取内容的正确方法。感谢。
解决方案
Request.Files
是检索真实发送到服务器的二进制数据的唯一途径。
其他提示
我发现有一个问题是换行和该请求应该用这样的合适的分离器被终止:
-------------------------------7cf2a327f01ae
Content-Disposition: form-data; name="DeviceID1"
Some binary data
-------------------------------7cf2a327f01ae
Content-Disposition: form-data; name="DeviceID2"
Some binary data
-------------------------------7cf2a327f01ae
现在的关键出现在的Request.Form然而这个集合是字符串类型的,所以我决定使用的文件名,然后从Request.Files得到。或者我可以完全手动解析整个请求的内容。
不隶属于 StackOverflow