как использовать PostgreSQL mod для vertx в js?

#javascript #jquery #ajax #postgresql #vert.x

#javascript #jquery #ajax #postgresql #vert.x

Вопрос:

привет, я новичок в vertx, и я хочу использовать https://github.com/vert-x/mod-mysql-postgresql для службы я использую этот код для своего веб-сервера

   var vertx = require('vertx');
  var console = require('vertx/console');

  var Server = vertx.createHttpServer();

  Server.requestHandler(function (req) {
      var file = req.path() === '/' ? 'index.html' : req.path();
      if (file === '/foo') {
          foo(req);
      }    
      else{ 
       req.response.sendFile('html/'   file);
      }
  }).listen(8081);

  function foo(req) {    
      req.bodyHandler(function (data) {
            //data is json {name:foo, age:13}   i want insert this in any table in postgre
            //do  
           var dataresponse= messagefrompostgre;//e: {status:"ok", code:200, message: "its ok"}
          req.response.putHeader("Content-Type", "application/json");                            
          req.response.end(dataresponse);
      });
  }
 

и это моя кнопка нажатия события

 $.ajax({
                data:   {name:foo, age:13} ,
                url:   '/foo',
                type:  'post',
                dataType: 'json', 
                complete:  function (response) {
                        alert(JSON.stringify(response));                      
                }
          });
 

Комментарии:

1. В этом вопросе отсутствует важная часть: описание проблемы.

Ответ №1:

Я нашел, как это сделать:

   var vertx = require('vertx');
  var console = require('vertx/console');//TODO: remove
  var eventBus = vertx.eventBus;

  var Server = vertx.createHttpServer();

  Server.requestHandler(function (req) {     
      var file = req.path() === '/' ? 'index.html' : req.path();
      if (file === '/foo') {
          foo(req);
      }
      else{
       req.response.sendFile('html/'   file);
      }
  }).listen(8081);  

  function foo(req) {    
      req.bodyHandler(function (data) {
            //data is json {name:foo, age:13}                   
            var jsona={
                      "action" : "raw",
                      "command" : "select * from test"
                    }             

            eventBus.send("PostgreSQL-asyncdb",jsona, function(reply) {
            req.response.putHeader("Content-Type", "application/json");                          
            req.response.end(JSON.stringify(reply));                
            }); 
      });
  }   
 

и это возвращает:

 {"message":"SELECT 6","rows":6,"fields":["testt"],"results":[["lol"],["lolŕ"],["lol2"],["lol2"],["testlol"],["testlolp"]],"status":"ok"}