Javascript Internet Explorer口吃请求

Javascript Internet Explorer口吃请求,javascript,internet-explorer,Javascript,Internet Explorer,对于一个特殊的项目,我选择编写自己的微型web服务器,使用.Net Framework HttpListener类实际上非常简单 直到昨天我开始使用Internet Explorer进行测试,一切都很顺利 我的服务器在任何ie请求下都会崩溃!我终于找到了原因:口吃!至少ie7和ie8,我还没有尝试过其他版本 FireFox、Chrome和Opera都不会出现这个问题 更具体地说,我在网页中使用动态javascript插入,以在跨域调用场景中绕过同源策略。此脚本生成对我的微型服务器的请求。假设生成

对于一个特殊的项目,我选择编写自己的微型web服务器,使用.Net Framework HttpListener类实际上非常简单

直到昨天我开始使用Internet Explorer进行测试,一切都很顺利

我的服务器在任何ie请求下都会崩溃!我终于找到了原因:口吃!至少ie7和ie8,我还没有尝试过其他版本

FireFox、Chrome和Opera都不会出现这个问题

更具体地说,我在网页中使用动态javascript插入,以在跨域调用场景中绕过同源策略。此脚本生成对我的微型服务器的请求。假设生成的请求是:

http://localhost:8081/myService?p1=A,p2=B,p3=C,p4=D,p5=E
使用FFox、Chrome或Opera,我的服务器确实会收到来自浏览器的单个请求:

http://localhost:8081/myService?p1=A,p2=B,p3=C,p4=D,p5=E
使用ie,我的服务器会收到随机数量的部分请求,如:

http://localhost:8081/myService?p1=A,
http://localhost:8081/myService?p1=A,p2=B,
http://localhost:8081/myService?p1=A,p2=B,p3=C,
http://localhost:8081/myService?p1=A,p2=B,p3=C,p4=D,
事实上,它们很多,因为我有20个左右的参数

最后:

http://localhost:8081/myService?p1=A,p2=B,p3=C,p4=D,p5=E
这基本上没什么大不了的,因为我的逻辑能够处理缺少参数的情况。问题在于,每个不完整的请求实际上都会关闭连接错误1229。这会使试图响应每个请求的服务器崩溃。修复很容易,但我仍然不喜欢服务器上充斥着这些中间的无法响应的请求,因此这些请求都是无用的。 此外,请求有时看起来像:

http://localhost:8081/myService?p1=A,p2=B,p3=C,?p1=A,p2=B,p3=C,p4=D,p5=E

我跟踪了javascript:无论什么浏览器,生成函数只调用一次,所以这听起来像是ie的问题


有没有人有办法阻止ie中出现这种行为?

您使用的是分隔符,而不是常见的分隔符&出于某种特殊原因?感觉它更容易让人读懂。。。没有其他原因…只是在代码中更改了它。这显然没有效果。