的阻塞及跨域名解析
阻塞的 请求
我们先来证实一下请求的阻塞情况吧。我们使用如下的代码:
连续发起三个请求
!
"#$%&'#(#&")*#!
"+!
,
)
!
!
!
,
当执行 ) 时就会连续发出 - 个相同域名的请求,还是通过统计图表来查看阻塞
的效果,如图:
每个请求需要花费 ."/ 秒的时间。很明显,第三个请求必须等到第一个请求结束之后才能
执行,因此总共需要进行 - 秒多钟才能执行完毕。我们要改变的就是这个状况。
传统的跨域名异步请求解决方案
安全性的唯一保证,似乎就是对于跨域名(01) 请求的限制。除
非打开本地硬盘的网页,或者在 23 中将跨域名传输数据的限制打开,否则向其他域名发出
请求都会被禁止。而且对于跨域名的判断非常严格,不同的子域名,或者相同域名的
不同端口,都会被认作是不同的域名,我们不能向它们的资源发出 请求。
从表面上看起来似乎没有办法打破这个限制,还好我们有个救星,那就是 !
虽然不在标准中出现,但是由于它实在有用,44* 也“不得不”对它进行了支
持(类似的还有 ')。网上已经有一些跨域名发出异步请求的做法,但是它们实
在做的不好。它们的简单工作原理如下:在另一个域名下放置一个特定的页面文件作为
$*5,主页面将异步请求的信息通过 65&7 传递入 里的 $*5 页面,$*5 页
面在 请求执行完毕后将结果放在自己 的 )) 中,而主页面会对 的
的 )) 值进行轮询,一旦发现它出现了改变,则通过 )) 值得到需要的信息。
评论0