簡體   English   中英

使用elastic.js中止elasticsearch請求

[英]Abort elasticsearch request using elastic.js

有沒有一種方法可以使用elasticjs取消對Elasticsearch的請求/查詢? 我正在使用的網絡應用每5秒執行一次請求/查詢,但是如果由於某種原因5秒鍾內未出現響應(因此瀏覽器不會堆積很多),我想取消該請求因為查詢是重復發生的,所以不必要的請求)。 我知道這不會阻止Elasticsearch完成查詢,但是我想至少在瀏覽器中取消請求。

例:

var request = ejs.Request().doSearch();
var dataFromElasticsearch;

request.then(function (data) {
    dataFromElasticsearch = data;   
});

setTimeout(function () {
    if (!dataFromElasticsearch) {
        //do something here to cancel request
    }
}, 5000)

根據elasticsearch.js的文檔 (在撰寫本文時為3.1):

...調用API將返回一個對象(一個Promise或一個普通對象),該對象具有abort()方法。 調用該abort方法將結束HTTP請求,但不會結束Elasticsearch正在進行的工作。

特別針對您的示例:

setTimeout(function () {
    if (!dataFromElasticsearch) {
        request.abort();
    }
}, 5000)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM