ASP.NET做$.ajax异步传输的数据问题

1、客户端向服务端(ashx文件)发送请求数据

  向服务端发送请求数据可以是object或string,格式一般为键值对(key/value)的形式,具体为js对象({key:value},若data数据类型为JavaScript对象或数组,Jquery在提交之前自动调用JQuery.param()方法把要发送的数据编码成为"application/x-www-form-urlencoded"格式的数据(即name=value&name1=value1))或json对象({"key","value"})或拼接在URL后面("test.ashx?key=value")。如果前端页面发送的请求数据过多,可将该json对象做序列化处理成json字符串作为一个key的value,此时后台接收数据是只需使用:get:context.Request.QueryString["key"]  post:context.Request.Form["key"]获取到,然后对获取到的数据利用Newtonsoft.Json.JsonConvert.DeserializeObject<className>(key)方法做反序列化处理即可将数据存到实体类className中,此时要引用程序集Newtonsoft.Json,此处的类名是指的存放json字符串中的数据所用。

  参数dataType是告诉后台我要什么样格式的数据,但我觉得更多是为后台传过来的数据做处理,例如如果后台传过来的是json字符串,如果设定dataType为json,那返回的数据就是json对象,否则就是json字符串,需另外做反序列化处理才能在前端页面中使用。可以是以下几种形式:(即服务器回发数据也可以这几种)

"xml": 返回 XML 文档,可用 jQuery 处理。

"html": 返回纯文本 HTML 信息;包含 script 元素。

"script": 返回纯文本 JavaScript 代码。不会自动缓存结果。

"json": 返回 JSON 数据 。JQuery将返回的字符串格式数据自动转化为Javascript对象,便于直接使用obj.property格式访问。若没有指定该选项,即使返回的是JSON格式的字符串,JQuery也不会自动转换。

"jsonp": JSONP 格式。使用 JSONP 形式调用函数时,如 "myurl?callback=?" jQuery 将自动替换 ? 为正确的函数名,以执行回调函数。

如果不指定,jQuery 将自动根据 HTTP 包 MIME 信息返回 responseXML 或 responseText,并作为回调函数参数传递

2、服务端收到请求后返回的数据

context.Response.Write(要发送给客户端的数据);

一般回发格式用json,即json字符串,因为Response.Write()里面只能是字符串

注:

    1、json对象是用json初始化器生成的js对象

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值