使用js发请求时,一般使用表单.json对象或者字符串
$.post(url,jsonStr)
服务端获取参数
Request.QueryString.Get();// GET参数
Request.Form.Get();// POST参数
由于一直是使用JS发请求,未注意过服务端收不到参数的情况
使用C#的HttpWebRequest发http请求时,却发现服务端收不到参数.(出现在使用POST方式时)
于是使用最这个办法,读取InputStream,可以拿到参数
byte[] byts = new byte[this.Request.InputStream.Length];
Request.InputStream.Read(byts, 0, byts.Length);
json = System.Text.Encoding.Default.GetString(byts);
如果要让服务端拿到POST的表单参数 Request.Form.Get(),那么传参数时如下
string postPara="id=1&name=xx";// 和 url上参数形式一样
byte[] data = System.Text.Encoding.UTF8.GetBytes(postPara);
request.ContentLength = data.Length;
reqStream = request.GetRequestStream();
reqStream.Write(data, 0, data.Length);
reqStream.Close();