gpt4 book ai didi

javascript - 在客户端实现 cometd

转载 作者:行者123 更新时间:2023-11-29 18:35:19 25 4
gpt4 key购买 nike

我正在尝试在我的应用程序中实现 Comet,但由于没有使用 JavaScript 的经验,我不确定如何在客户端实现。

当服务器收到一个请求时,它只是保持它打开并在必要时向它写入数据:

def render_GET(self, request):
print "connected"
request.write("Initiated\r\n")
reactor.callLater(random.randint(2, 10), self._delay, request)
return NOT_DONE_YET;

def _delay(self, request):
print "output"
self.count += 1
request.write("Hello... {0}\r\n".format(self.count))
reactor.callLater(random.randint(2, 10), self._delay, request)

到目前为止,我一直在客户端使用 jQuery,但我不知道如何让它与服务器一起工作。 I've been looking at the jQuery.AJAX documentation并且没有回调说“嘿!我刚收到一些数据!”,他们只说“请求已完成”。

我认为 dataFilter() 函数是我想要的,因为它允许您在请求完成之前处理原始数据,但它只允许您在请求完成之前只是请求完成,而不是在您收到数据时完成。

那么如何通过打开的请求持续接收数据呢?正如您在 python 示例中看到的那样,每条数据都以 \r\n 分隔,因此我希望 JavaScript 的行为类似于线路接收器。这可以用 jQuery 还是我必须直接使用 XMLHttpRequest/ActiveXObject?是否有一个(简单、轻量级的)库可以为我实现线路接收器?

我希望听到有关现有库的消息如何自己实现它,因为到目前为止我在 comet 库方面运气不好,在这一点上我希望只需编写我需要的代码,而不必为整个库而烦恼。

最佳答案

在查看了其他一些 Comet/jQuery 问题后,我偶然发现了这个:http://code.google.com/p/jquerycomet/ ,它看起来像是一个 jQuery 插件,可以满足您的需求。如果您想了解它是如何工作的,我会深入研究源代码。

我找到一些重要信息的问题是 here .

关于javascript - 在客户端实现 cometd ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3875509/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com