2015-09-05 4 views
0

У меня есть файл 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) 
}) 

ответ

Смежные вопросы