Ajax readystate 3(Chrome / IE)
我正在玩一些comet
和mxhr
技术。 事实certificate, Chrome (5)
实际上会readystate 3
一个状态readystate 3
,但responseText
在那里总是为空 。
直到今天,我只有InternetExplorers
(<8)会表现出这种行为。
我错了吗?
有人可以确认Chrome
不完全支持ajax readystate 3
吗?
在webkits
开发者论坛上做了大量研究和阅读之后,我终于可以告诉我们发生了什么以及如何在chrome / webkit / safari
预防这种情况。
这都是关于连接类型的。 为了使chrome
在“ ready state 3
“正确”工作(responseText为非null),我们需要一个不受嗅探的内容类型。 例如,Content-type:text / xml工作正常。
webkit
另一个重要事项是,在传输足够的字节之前,它不会呈现推送的数据。 “官方”该treshhold
约为256字节。 所以你必须至少发送它作为填充。
无论如何,在我的测试中,我认为你需要在Chrome(5)
第一次触发state3 ajax事件之前发送更多内容。 大约1kb。