POST

来源:互联网 发布:程序员简历造假 知乎 编辑:程序博客网 时间:2024/06/05 01:13

asp.net中,如何接收post提交的数据??

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
                 request.Method = "POST";//这无论是赋post还是get,都必须用全大写,此值错一点,都会导致程序错误,因为不符合http协议
request.ContentType = "multipart/form-data; boundary=--abc";//或者为"application/x-www-form-urlencoded",对应form标签里的 enctype属性,boundary那部分查是FORM元素各值的分隔符,具体请查阅HTTP协议相关文档,如果此值用application/x- www-form-urlencoded则form各元素用&来分隔,而元素的值是经过了url编码,调用System.Web.HttpUtility.UrlEncode方法,就能将值进行url编码。
//如果需要加cookie,则按如下方式添加,具体请参阅msdn
request.CookieContainer = new CookieContainer();

request.CookieContainer.Add(new Cookie("test", "i love u", "/", "localhost"));

byte[] data = Encoding.GetEncoding(encoding).GetBytes(postData);//将要发送的数据按HTTP协议拼装好字符串转成字节数组
request.ContentLength = data.Length;//设置内容的长度,长度就是要发送的整个字节数组的长度,此句必须有,长度不对就会导致错误
request.GetRequestStream().Write(data, 0, data.Length);//获取request的流,将数据写入流中,至此完成了form提交的必须有的步骤
response = (HttpWebResponse)request.GetResponse();//最后取得response获取服务器端的返回数据进行处理
 
原创粉丝点击