C# 使用InputStream接收 解析表单参数

一般情况下,我们接收表单参数都是使用 Request[""] ,Request.Form[""]。

其实可以使用另一种方式:使用数据流来读取传递的主体参数,

代码如下: 

            Stream s = Request.InputStream;
            int count = 0;
            byte[] buffer = new byte[1024];
            StringBuilder builder = new StringBuilder();

            while ((count = s.Read(buffer, 0, 1024)) > 0)
            {
                builder.Append(Encoding.UTF8.GetString(buffer, 0, count));
            }
            s.Flush();
            s.Close();
            s.Dispose();
            string queryData = HttpUtility.UrlDecode(builder.ToString());

或者

            string queryData = string.Empty;
            using (StreamReader sr = new StreamReader(Request.InputStream))
            {
                queryData = sr.ReadLine();
            }
            queryData = HttpUtility.UrlDecode(queryData);

读取后,再对字符串进行解析,操作。  

  

原文地址:https://www.cnblogs.com/liuzheng0612/p/13099200.html