Я не уверен, как использовать ajax POST для POST с Jade-страницы на узел JS. Если кто-то может предоставить пример или сказать мне, чего я не вижу в сценарии, пожалуйста, дайте мне знать.Как создать ajax POST с узлом JS?
Это файл сценарий:
//Add friends
$('.addContact').click(function() {
$.post('/addContact',
{friendRequest: $(this).data('user')});
if($(this).html!=='Contact Requested') {
return $(this).html('Contact Requested');
}
});
URL, у меня есть для POST на моем app.js файл:
app.post('/addContact', user.addContactPost);
Я выкладываю верно для события щелчка на нажмите «Добавить контакт» и измените его на «Запросить контакт», если данные в db отображаются как истинные.
Это файл нефрита:
extends layout
block content
div
legend Search Results
div#userResults
for user in ufirstName
a(href='/user/#{user.id}')
p #{user.firstName} #{user.lastName}
button.addContact Add Contact
Файл маршрут таков:
exports.addContactPost = function(req, res, err) {
User.findByIdAndUpdate(req.signedCookies.userid, {
$push: {friendRequest: req.body.friendRequest}
}, function(err) {
if(err) {
console.log("post2");
return console.log('error');
//return res.render('addContactError', {title: 'Weblio'});
}
else {
console.log('postsuccess');
//alert('Contact added');
res.json({response: true});
}
});
};
Что такое user.addContactPost? – user568109
Я добавил его в файлы выше. – Lion789
Можете ли вы отлаживать и посмотреть, попадете ли вы на свой маршрут? Я думаю, ваша проблема в том, что вы ничего не отправляете в своем посте. req.body.addContact всегда будет неопределенным. – ThrowsException