[Serializable]
public class Person
{
public int Id { getset}
public string Name { getset}
}
一个ashx的一般处理程序
List<Person>list = new List<Person>()
Person p1=new Person(){Id=1,Name="张三1"}
Person p2=new Person(){Id=3,Name="张三2"}
list.Add(p1)
list.Add(p2)
//序列化对象为JSON字符串返回浏览器
JavaScriptSerializer ser = new JavaScriptSerializer()
string json = ser.Serialize(list)
Context.Response.Write(json)
//模拟的数据格式 [{"Id":"1","Name":"张三1"},{{"Id":"2","Name":"张三2"}}]
HTMLPOST请求
$.post("json.ashx", { "name": "123" }, function (data) {
//data[0].Id 这个就是json数据获取方式
//你可以遍历 *** 作
}, "json")
//建立WebRequest对象,url目标地址HttpWebRequest req =(HttpWebRequest)WebRequest.Create(url)
//这里的s 是啥个东西??搞不懂
string s = "要提交的数据"
//将LoginInfo转换为byte[]格式,这里的LoginInfo应该是你要传输的数据
byte[] requestBytes = System.Text.Encoding.ASCII.GetBytes(LoginInfo)
//设置请求为POST方式,
req.Method = "POST"
//设置请求类型
req.ContentType = "application/x-www-form-urlencoded"
//请求发送的数据长度, 这里就很清楚了,请求数据是从LoginInfo转换来的
//前面的代码byte[] requestBytes = System.Text.Encoding.ASCII.GetBytes(LoginInfo)
req.ContentLength = requestBytes.Length
//建立请求的输入流
Stream requestStream = req.GetRequestStream()
//从requestBytes中读取数据到输入流中
requestStream.Write(requestBytes, 0, requestBytes.Length)
//关闭输入流
requestStream.Close()
//获取响应对象
HttpWebResponse res = (HttpWebResponse)req.GetResponse()
//获取服务器返回流
StreamReader sr = new StreamReader(res.GetResponseStream(),System.Text.Encoding.Default)
//读取返回流数据,并赋值给backstr
string backstr =sr.ReadToEnd()
//页面输出line???? 应该是backstr 吧
Response.Write(line)
//关闭* 2, 不解释了
sr.Close()
res.Close()
给附加分吧!!!!!
有三种方式可以进行参数传递:(1). Form (2). ?id= (3).cookieRequest.Form是取post传值
表单的post传值,Ajax post异步传值则需要用Request.Params来获取传过来的参数
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)