Как передать массив из app.get () в app.post () - PullRequest
1 голос
/ 13 июня 2019

Я получаю массив из ajax-файла, который содержит массив продуктов, которые я хочу добавить в заказ. Я хочу связать таблицу orderProducts и таблицу заказа друг с другом в столбце под названием orderId ..но я получаю массив в app.get () и не могу получить его в app.post () для публикации данных. Продукты выбираются на странице, а данные заказа выбираются на другой.

мой код ajax


    $('#save').click(function () {
        var orderProduct = new Array();
        $("#review-products input[type=checkbox]:checked").each(function () {
                      var row = $(this).closest("tr");
                      var message0 = row.find('#check').val();
                      var message1 = row.find('.name').text().trim();
                      var message2 =  row.find('.currency').text().trim();
                      var message3 =  row.find(".foo").val();
                      const result =  {check: message0,name: message1,p: message2,q:  message3 ,total: message2 * message3}
                      var hh = orderProduct.push(result);
                });
              $.ajax({
                type: 'GET',
                data: {selectedProduct: orderProduct },
                url: '/order/product',
                success: function (data) {
                  console.log(data);
                }
              })
               })

маршруты


    app.get('/order/product' , getProduct)
    app.post('/postOrder' , postOrder);
    getProduct: (req , res ) => {
      var products = req.query.selectedProduct;
      console.log(products);
    },
    postOrder: (req ,res) => {
      res.redirect('/')
    }

Ответы [ 2 ]

0 голосов
/ 16 июня 2019

Я использовал глобальные переменные для использования одной и той же переменной в функциях get и post

0 голосов
/ 13 июня 2019

Попробуйте использовать body-parser

var bodyParser = require('body-parser')
... 
app.use(bodyParser )

// then
getProduct: (req , res ) => {
  console.log(req.body);
}

и измените

$.ajax({
    type: 'POST',
    ...
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...