Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/42.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 如何使Angular2 Http.get无限期等待?_Node.js_Angular - Fatal编程技术网

Node.js 如何使Angular2 Http.get无限期等待?

Node.js 如何使Angular2 Http.get无限期等待?,node.js,angular,Node.js,Angular,我正在用Angular2为前端开发一个电子应用程序。当用户到达主页时,angular启动http.get服务,该服务启动硬件设备,等待用户以RFID卡的形式输入。当触发用户响应时,express返回带有数据的GET调用。用户事件可能在几秒钟到几小时内发生。如果用户响应很快,但几分钟后Angular没有显示响应,则它可以正常工作 很抱歉,问题的细节不清楚。我不知道要添加什么代码。任何帮助都将不胜感激。您是否也控制快递部分?如果是这样,您可以将其更改为返回202 Accepted立即,并提供一个链接

我正在用Angular2为前端开发一个电子应用程序。当用户到达主页时,angular启动http.get服务,该服务启动硬件设备,等待用户以RFID卡的形式输入。当触发用户响应时,express返回带有数据的GET调用。用户事件可能在几秒钟到几小时内发生。如果用户响应很快,但几分钟后Angular没有显示响应,则它可以正常工作


很抱歉,问题的细节不清楚。我不知道要添加什么代码。任何帮助都将不胜感激。

您是否也控制快递部分?如果是这样,您可以将其更改为返回202 Accepted立即,并提供一个链接以轮询完成情况和数据。这样,您就不必有一个长时间运行的请求,electron可能会放弃它。@jonrsharpe,谢谢。我的印象是,express在收到请求后会立即这样做。我试试看。并且正确地学习express。除非您另有说明,否则它将尝试执行所有操作,然后返回200 OK。这意味着如果客户已经等得够久,请求就会超时。很抱歉,我问了一个愚蠢的问题。我刚刚开始网络开发。我发送了状态202。但这会导致客户端停止向服务器请求进一步响应。客户机如何知道何时再次询问服务器?这就是应该发生的事情。正如我在上面所说的,您返回了一个数据可用的位置,然后客户机可以按照您选择的频率继续检查新位置,直到它返回数据为止。参见,例如,您是否也控制快速部件?如果是这样,您可以将其更改为返回202 Accepted立即,并提供一个链接以轮询完成情况和数据。这样,您就不必有一个长时间运行的请求,electron可能会放弃它。@jonrsharpe,谢谢。我的印象是,express在收到请求后会立即这样做。我试试看。并且正确地学习express。除非您另有说明,否则它将尝试执行所有操作,然后返回200 OK。这意味着如果客户已经等得够久,请求就会超时。很抱歉,我问了一个愚蠢的问题。我刚刚开始网络开发。我发送了状态202。但这会导致客户端停止向服务器请求进一步响应。客户机如何知道何时再次询问服务器?这就是应该发生的事情。正如我在上面所说的,您返回了一个数据可用的位置,然后客户机可以按照您选择的频率继续检查新位置,直到它返回数据为止。见例。