Отправка данных с клиента на сервер Node - PullRequest
0 голосов
/ 01 июля 2018

Я могу публиковать данные на сервере узлов, но не могу получить доступ к данным в моем маршруте app.get.

orders.hbs (ajax):

$.post( "/show_items", { o_id: result } );

app.js:

app.post ('/show_items', function(req,res){
  var order_num = req.body.o_id;
});

app.get('/orders',authenticationMiddleware(), function(request, response){

  console.log(order_num);
...

}

Проблема в том, что в моем app.get я не могу получить доступ к переменной $ order_num. Как я могу получить доступ к переменной и использовать ее?

Ответы [ 2 ]

0 голосов
/ 01 июля 2018

Я хочу узнать пример использования, прежде чем отвечать. Когда вы отправляете данные в POST-API, в идеале они должны быть доступны / использоваться всеми промежуточными программами (функциями), определенными для POST-API.

@ Yoni: вы пытаетесь использовать информацию, переданную в POST API (в свойстве req.body.order_num), в совершенно другом GET API.

Но если вы все равно хотите получить к нему доступ, тогда решение, совместно используемое @Bostrot, работает нормально.

0 голосов
/ 01 июля 2018

Когда order_num определено в app.post, это локальная переменная, доступная только в этой области. Если вы хотите получить доступ к нему в app.get, вам нужно определить его раньше, а затем просто установить его:

var order_num;

app.post ('/show_items', function(req,res){
    order_num = req.body.o_id;
});

...

app.get('/orders',authenticationMiddleware(), function(request, response){
    console.log(order_num);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...