【发布时间】:2021-06-16 20:38:59
【问题描述】:
我知道我们可以从某个服务器发出 javascript ajax 请求,它要么收到响应,要么在一段时间后给出超时错误。
让我们考虑这种情况,当我们不想等待请求,而是服务器会在收到请求后随时异步发送响应(或者我们可以说这将是从服务器到客户端的另一个请求),然后使用响应调用 javascript CB 函数。
我正在寻找如何实现它的想法,主要支持所有现代浏览器,如果可能的话,不依赖任何第三方插件,除了可能是 jQuery。
【问题讨论】:
-
所以您希望服务器按照服务器条款向客户端发送信号?或者特别是在客户发送帖子/获取之后?
-
看看网络套接字,网络套接字协议将使您能够在客户端->服务器、服务器->客户端的任一方向上传输数据。看看socket.io 一个库,它使用套接字或其他可用技术实现客户端和服务器之间的实时通信。
-
您可以在服务器开始处理,向用户返回请求在队列中的响应。服务器在一段时间后完成请求并将结果推送到客户端。这是一种推送机制,可以使用 websockets、长轮询(在旧浏览器中)来实现,或者您可以使用 socket.io 等库
-
@Glubus 服务端收到请求,但不推送同一个请求响应的处理结果。 SatishGadhave:这个推送机制就是我要找的,希望能找到一些原生的实现。
标签: javascript jquery ajax