У меня есть файл elasticsearch (может быть что-то еще) js, который выполняет простой запрос и использует обещание вернуть данные.Модуль Return Promise Express Express
Я называю этот модуль в моем экспрессе (server.js) в надежде получить данные, потому что в конце концов, я хочу, чтобы отправить его на угловой или что-то на самом деле ...
Im интересно, почему я не получаю данные обратно в экспресс-сервер?
get.js[мой elasticsearch файл расслоение плотной]
var elasticsearch = require('elasticsearch');
var client = new elasticsearch.Client({
host: 'localhost:9200',
});
var Q = require('q')
function GetElastic(qry) {
var deferred = Q.defer();
client.search({
index: 'social',
type: 'network',
body: {
query: {
query_string:{
query:qry
}
}
}
}).then(function (resp) {
deferred.resolve(resp);
}, function (err) {
console.log(err.message);
return deferred.resolve(err);
});
return deferred.promise;
}
module.exports = GetElastic
server.js[мой экспресс-файл сервера]
var express = require('express')
var bodyParser = require('body-parser')
var Get = require('./models/get')
var app = express()
app.use(bodyParser.json())
app.get('/api/posts',function(req, res){
var qry = 'node'
var get = new Get(qry)
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end(JSON.stringify(get));
console.log(get)
})
app.listen(3000, function(){
console.log('Server listening on',3000)
})
вы можете – maddygoround