2016-06-27 3 views
0

Используя массивный драйвер postgreSQL, я могу подключиться к postgreSQL и получить записи из базы данных.Создание контроллера с помощью Nodejs и массива

var Massive = require("massive"); 

var connectionString = "postgres://postgres:[email protected]/postgres"; 
var db = Massive.connectSync({connectionString : connectionString}); 


    db.query("Select * from company", function (err, data) { 
     console.log(data); 
    }); 

Этот код регистрирует данные в окне консоли. Но я хочу создать конечную точку и отправить ответ клиенту.

Пробовал для примера о том, как создать контроллер, используя узел и массивный, но не очень удачный.

ответ

1

Похоже, вы хотите создать конечную точку HTTP, это правильно?

Для этого вы, вероятно, захотите использовать express.js.

Есть много больших учебники там на создании HTTP-сервер с курьерским, однако это поможет вам начать работу:

Установите экспресс-модуль с помощью менеджера пакетов узла.

С вашего терминала командной строки/тип:

cd project-name 
npm install express --save 

Изменить сервер узла к следующему:

var Massive = require("massive") 
    , http = require("http") // import http 
    , express = require("express") // import express 
    , app = express(); // instantiate your app 

/* database config */ 
var connectionString = "postgres://postgres:[email protected]/postgres"; 
var db = Massive.connectSync({connectionString : connectionString}); 

/* http routes */ 
app.get("/",function(req,res){ 
    // req is the request object 
    // res is the response object 
    db.query("Select * from company", function (err, data) { 
    // send a http response with status code 200 and the body as the query data. 
    res.status(200).send(data); 
    }); 
}); 

/* listen in port 3000 */ 
var server = http.createServer(app); 
server.listen(3000); 

Это приложение будет слушать порт 3000, а также отвечать на запросы «/ ', например http://localhost:3000/. База данных будет запрошена, и результат будет отправлен в ответ на HTTP-запрос.