草庐IT

javascript - 电话休眠后长轮询 jQuery.ajax() 无法回调?

我的网络应用程序使用“长轮询”方法来与服务器上的最新数据保持同步。服务器只有在有新数据时才响应,这可能相隔很多分钟。(这是一个供暖控制系统,您只能在室温变化或有人更改设置时看到更新)。varversion="0";functionupdater(){$.ajax({type:"POST",url:"/listen",data:version,success:function(data){version=handleUpdates(data);updater();},error:function(){setTimeout(updater,1000);}});}除一种情况外,它在桌面浏览器

javascript - React + axios 实现长轮询的方法

我正在使用React+axios从客户端与API对话。我是JavaScript的新手。我将如何实现长轮询以便在网页上获得近乎实时的更新?当后端是JSONRESTAPI时,是否有更好的方法在页面上进行实时更新?我应该考虑使用WebSockets或服务器端事件还是长轮询? 最佳答案 对于您的用例,还有另一种可能更好的方法:服务器发送事件。简而言之,SSE是从客户端向服务器发出的简单GET请求-除了服务器在处理完请求后不会关闭连接。相反,HTTP连接保持打开状态,服务器能够向客户端多次写入数据,这些数据实时显示。有关SSE与Websock

javascript - 长轮询 XHR 与 iframe

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。我正在实现典型的服务器推送(cometd)应用程序。我在两个选项之间进行选择:longpollXHR和iFrame。这些有什么好处和坏处?我知道跨站点限制并且iFrame是非常重量级的组件......还有其他区别吗?例如,传输的“可靠性”或对组件的控制级别?您怎么看,是否有一个正确的答案是哪种方法更好,或者这两种方法都有用例?提前致谢。附言我有一个非常好的

javascript - 控制 browser.wait() 的轮询频率(Fluent Wait)

故事:在Javaselenium语言绑定(bind)中有一个FluentWaitclass,这允许严格控制如何检查预期条件:EachFluentWaitinstancedefinesthemaximumamountoftimetowaitforacondition,aswellasthefrequencywithwhichtocheckthecondition.Furthermore,theusermayconfigurethewaittoignorespecifictypesofexceptionswhilstwaiting,suchasNoSuchElementExceptions

javascript - RxJS,如何轮询 API 以使用动态时间戳持续检查更新的记录

我是RxJS的新手,我正在尝试编写一个应用程序来完成以下事情:加载时,发出AJAX请求(为简单起见伪造为fetchItems())以获取项目列表。在此之后的每一秒,发出一个AJAX请求以获取项目。检查新项目时,只有在最近时间戳之后更改的项目才应返回。在可观察对象之外不应该有任何状态。我的firstattempt非常直接,实现了目标1、2和4。vardata$=Rx.Observable.interval(1000).startWith('runrightaway').map(function(){//`fetchItems(modifiedSince)`returnsanarrayof

javascript - 轮询与长轮询

我得到了这些examples在javascript中显示轮询与长轮询,但我不明白它们之间有何不同。特别是对于长轮询示例,它如何保持连接打开?这是传统轮询场景的样子:(functionpoll(){setTimeout(function(){$.ajax({url:"server",success:function(data){//UpdateyourdashboardgaugesalesGauge.setValue(data.value);//Setupthenextpollrecursivelypoll();},dataType:"json"});},30000);})();这是长轮

javascript - 将自定义 header 添加到 apollo 客户端轮询请求

我正在使用apollo-client库从我的Graphql服务器查询数据。通过apollo轮询功能,每5秒向服务器发送一些查询。是否有一种通用方法可以将自定义header添加到我的轮询客户端发送的所有请求中? 最佳答案 两种解决方案有两种方法可以做到这一点。一种是快速简便,适用于有一定限制的特定查询,另一种是通用解决方案,更安全,适用于多个查询。快速简便的解决方案优势很快而且……简单当您配置查询时,您可以使用其options字段对其进行配置,该字段有一个context字段。context的值将由网络链处理。context本身不会发送

javascript - 如何从附加组件中轮询 Google 文档

Adocumentedrestriction与文档和工作表插件的区别是Apps脚本无法判断用户在插件之外做了什么。给出了这个诱人的提示:Itispossibletopollforchangesinafile'scontentsfromasidebar'sclient-sidecode,althoughyou'llalwayshaveaslightdelay.Thattechniquecanalsoalertyourscripttochangesintheuser'sselectedcells(inSheets)andcursororselection(inDocs).遗憾的是,这在任何

javascript - 长轮询如何工作javascript?

您好,我知道在长轮询中,您会长时间保持与服务器的连接打开,直到您从服务器获得响应,然后再次轮询并等待下一个响应。但是我似乎不明白如何编码。下面这段代码使用长轮询,但我似乎不明白(functionpoll(){$.ajax({url:"server",success:function(data){//updatepagebasedondata},dataType:"json",complete:poll,timeout:30000});})();但是这里的连接是如何保持打开的。我知道一旦收到服务器的响应,“轮询”功能就会再次触发。但是连接是如何保持打开状态的?Edit1:-如果有人也能解

javascript - 更新主干模型/ View 的轮询请求

我需要找到一种方法来更新使用backbone实现的网络应用程序。用例如下:我有几个View,每个View,或者可能与这个View相关的模型/集合,需要在不同的时间向服务器发出不同的轮询请求以发现一些变化。我想知道最通用的方法是什么:1)实现传统轮询请求2)实现长轮询请求3)实现HTML5网络套接字附言:1)服务器是用PHP编写的。2)现在我正在寻找不使用HTML5WebSockets的解决方案,因为使用PHP可能不是那么简单。这是我使用TraditionalPollingRequest的简单代码(1)。(1)//MyModelvarMyModel=Backbone.View.exten