Asp.NET WebMethod: 使用Jquery的post发送信息的数据信息的大小限制

    今天在使用jQuery完善开发的一个对于超文本编辑器的功能的测试过程中,发现了开发程序中的一个小BUG。

(1)开发环境:

技术实现:JQuery+Ajax+Asp.NET 使用方式:aspx下的code behide技术中对于方法使用特性:WebMethod


操作系统:windows Server 2003

浏览器:chrome浏览器


总结:

  发现在aspx下使用方法特性WebMethod调用Jquery异步调去,post方式有数据发送和接收存在数据上限的问题。


  同样的Jquery的异步post发送方式,在ashx模式下使用正常。


(2) 测试案例:

1.采用一个对html文档编辑的一个增删改查的一个功能。

2.当在html编辑器中输入(/Copy) html格式的文件后

3.点击保存,通过jquery+ajax 的方式,即调用$.ajax发送post数据。

4.数据的主要组成为html文档信息

5.post失败,返回undefined错误。

(3)测试分析

1.程序中使用了escape来进行文本转意,一开始以为是它有问题,可能对于数据大的不能进行正常转意

 this.MyBoxText= escape(mybox.get_html());

但是,将escape()中的内容alert后,发现转移的内容基本上是正常的,所以排除javascript escape的问题

2.因为拷贝的html文件比较长,于是,就按照选择局部缩小的方式进行测试排查,然后将定位的html内容单独拷贝出来,继续排查。结果发现也不是超文本的问题。

3.思考:是不是post传递也有限制,于是构建一个文本,打开文本编辑器:

输入内容“A”,并进行大批量复制如下:


终于发现,post该信息的内容也出现了错误,于是将文件中的内容量缩小,并查看,文件的大小,查看方式是将文本保存,后看文本文件的属性,当文档的尺寸小于:128K后,将文档的内容再次复制出来,拷贝到html编译器中,点击保存,结果保存成功!

(4)问题原因:

后来google了一下资料,果然:在aspx下的静态方法的特性WebMethod下的异步调用:post的数据信息也有限制:128K的大小限制

需要注意: 

    同样的Jquery的异步post发送方式,在ashx模式下使用正常。


这次是亲身体会,记载下来,与各位共享。

详细可查看:http://blog.csdn.net/somat/article/details/158707



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值