小编典典

jQuery逐步读取AJAX流?

ajax

我已经阅读了这个问题,但并不能完全回答我的问题。不幸的是,自从我上次查看AJAX以来,XHR对象中的一切似乎已经发生了变化,因此不再可能responseText在完成填充之前直接访问它。

我必须编写一个页面,该页面使用AJAX(最好是jQuery,但我愿意接受建议)从无法控制的服务器通过HTTP检索CSV数据。响应数据可能会很大;一兆字节的文本并不罕见。

服务器是流友好的。在直接从JavaScript返回数据流时,还有什么方法可以访问它?

我确实可以选择编写一些PHP代码,这些代码位于中间,并使用某种“彗星”技术(长轮询,EventSource等),但我希望尽可能避免这种情况。

如果相关,请假设用户具有Firefox / Chrome / Opera的最新版本,并且与旧浏览器的兼容性不是问题。


阅读 454

收藏
2020-07-26

共1个答案

小编典典

您将要为此直接使用JavaScript。原因是您将要连续轮询而不是等待回调触发。您不需要jQuery,这非常简单。他们在Ajax
Patterns网站上
有一些不错的源代码

本质上,您只想跟踪响应中的最后一个位置,并定期轮询该位置之后的更多文本。您的情况不同之处在于,您可以订阅complete事件并停止轮询。

2020-07-26