易截截图软件、单文件、免安装、纯绿色、仅160KB

AJAX调用 ASP.net 本地文件系统的怪问题

最近开发Ext应用,使用ajax请求数据时,遇到了请求数据以返回,但IE里却无法显示的怪问题。
使用HTTPWatch查看,发现ERROR_INTERNET_CONNECTION_RESET。
使用FireFox和google浏览器都没有问题,网上查找说网站放在IIS上没有问题,试验后证明有效。
但同事开发用机大部分都是XP系统,有部分还是HOME版,因此该问题必须找到原因解决才行。发现POST请求改为GET请求也不会出这个问题。
再进一步的大胆假设,小心求证。
在ProcessRequest最后增加
context.Request.InputStream.ReadByte();
后问题彻底解决
这证明了我之前的假设
情况可能是由于使用文件方式系统的网站,调试运行时使用的是ASP.NET Development Server而非IIS,因此运行机制上与IIS存在不同。
检查代码发现,处理该请求时,只获取了URL上的部分内容,并未对POST内容部分进行获取。
此时可能ASP.NET Development Server并未从IE链接过来的Socket中读取剩余部分,而程序处理完成后服务器端发送结果完成后该Socket链接断掉,而IE认为数据还没有发送完因此报了ERROR_INTERNET_CONNECTION_RESET错误。


相关文档:

ASP.NET多语言版的开发

如果您创建的网页将由使用不同语言的用户阅读,则必须为这些读者提供用他们自己的语言查看网页的方法。一种方法是分别用各语言重新创建页面,但这种方法可能需要大量工作量、容易出错并且在更改原始页时很难维护。ASP.NET 为您提供了一种方法,使用这种方法创建的页可以根据浏览器的首选语言设置或用户显式选择的语言获取内 ......

关于ASP.Net的validateRequest=false(验证请求)

ASP.Net的validateRequest=false
      validateRequest="false"   指是否要IIS验证页面提交的非法字符,比如:>,<号等,当我们需要将一定格式得html代码获得,插入数据库时候,就要将这个属性设置为false,例如你将字体加粗等操作时。
   
ASP.Net 1.1后引入了 ......

ASP.NET的配置管理 machine.config

   ASP.NET的配置是从machine.config文件开始的,通常情况下这个文件被放在"c:\Windows\Microsoft.NET\Framework\v2.0.50727\Config"目录中,这文件中定义了ASP.NET所支持的配置文件的各个部分,包括ASP.NET工作进程的配置,以及注册一些能够提供诸如属性配置(profiles)、成员资格(membership)、基于角色的安 ......

ASP.NET MVC控制器概览(C#)

这篇教程探讨ASP.NET MVC控制器,控制器action和action result。完成此教程后,你会懂得控制器如何被用来控制访问者与ASP.NET MVC网站的交互方式。
理解控制器
MVC 控制器负责对ASP.NET MVC网站的请求作出回应。每一个浏览器请求都被映射到一个特定的控制器。例如,想象你在浏览器地址栏输入以下URL:
http://localhost/P ......

ASP.net 跨平台Linux

近来,随着Mono2.4和Jexus web server 2.3的成功发布,在Linux 平台架设Asp.net的时机已经完全成熟。由于Linux服务器系统所具备的大量的优点,可以预计,跨平台的Linux ASP.NET网站必将进入我们的工作与生产实际。
名词解释:
一、Mono:
Mono是一个开源项目,是按ECMA-335定义的标准执行.NET框架,简单地说,Mono就是 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号