javascript - elasticsearch.js&nodejs scoll方法的問題
問題描述
不知道有沒有用過nodejs結(jié)合elasticsearch做開發(fā)的。今天想嘗試一下,執(zhí)行了一個scoll查詢,出現(xiàn)一個很奇怪的錯誤,請幫忙看看。這是我的方法
esdao.searchScollFor130 = function() { esClient.search({index: esconf.index130,type: esconf.ttype,scroll: ’30s’,search_type: ’scan’,body: {query: {match_all: {}}} }, function getMoreUntilDone(err, ress) {console.log(ress);if (92202 !== allresult.length) { esClient.scroll({scrollId: ress._scroll_id,scroll: ’30s’ }, getMoreUntilDone);} else { console.log(’every 'test' title’, allTitles);} }); console.log(allresult);}
但是執(zhí)行過程中后臺一直拋錯
換一種寫法,把92202換成ress.hits.total想取得總條數(shù),但是:很是郁悶,我直接把這個返回結(jié)果復(fù)制出來賦給一個變量,卻是可以取得到total值。
問題解答
回答1:我自己已經(jīng)找到問題原因了,把解決方案說一下,免得遇到同樣問題的再走彎路,因為我的服務(wù)器版本是比較老的1.2的版本,所以,只要在創(chuàng)建客戶端的時候加上版本號就好了。
var esClient = new elasticsearch.Client({ host: esconf.host130, apiVersion: '0.90', log: ’error’ });
這是我在github上提的問題,是看到另一個提問的人給了我的啟發(fā)。大家也可以參考一下我的解決過程。
相關(guān)文章:
1. 小程序怎么加外鏈,語句怎么寫!求救新手,開文檔沒發(fā)現(xiàn)2. javascript - 在 vue里面用import引入js文件,結(jié)果為undefined3. javascript - vue-resource中如何設(shè)置全局的timeout?4. html5和Flash對抗是什么情況?5. 前端 - node vue webpack項目文件結(jié)構(gòu)6. Java反射問題:為什么android.os.Message的recycleUnchecked方法不能通過反射獲取到?7. php如何獲取訪問者路由器的mac地址8. 多選框?qū)戇M(jìn)數(shù)據(jù)庫怎么寫9. mysql主從 - 請教下mysql 主動-被動模式的雙主配置 和 主從配置在應(yīng)用上有什么區(qū)別?10. thinkPHP5中獲取數(shù)據(jù)庫數(shù)據(jù)后默認(rèn)選中下拉框的值,傳遞到后臺消失不見。有圖有代碼,希望有人幫忙
