2017-01-15 3 views
2

Я пытаюсь передать переменную из jQuery в nodejs, но я не получаю правильные результаты, nodejs возвращает [object Object]. как он может возвращать строковую переменную на стороне nodejs.Передача переменной из jQuery ajax to nodejs

$('.test').click(function(){ 
     var tsId = "Hello World"; 
     alert(tsId); 
     console.log(tsId); 
     $.ajax({ 
     'type': 'post', 
     'data':tsId, 
     'url': '/test/testing', 
     'success': function (data) { 
      alert(data); 
     } 
     }) 
    }); 


router.post('/testing', function(req, res) { 

    var tsID = req.body; 
    console.log("stsID "+tsID);\\ outputs [object Object] 

}); 

ответ

1

Я рекомендую вам использовать этот способ:

Вы должны передать объект в AJAX data, который содержит вашу Hello World строку.

$.ajax({ 
    type: 'post', 
    data:{str:tsId}, 
    url: '/test/testing', 
    success: function (data) { 
     alert(data); 
    } 
}); 

При использовании Node.js файла этого:

router.post('/testing', function(req, res) { 
    var tsID = req.body; 
    console.log("stsID "+tsID.str); 
}); 
+0

выходы: { "Hello World": ""} ее значение ключа –

+0

Что вы получаете в консоли при попытке 'console.log ("stsID" + tsID); '? –

+0

[object Object] –

0

Попробуйте запустить консоль tsID.data или tsID.tsId. Что вы получаете? Что вы получите, если вы отбросили отладчик перед вашим консольным журналом и напишите «tsID» в консоли?

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