私は、AJAX POSTリクエストを介してNode/MongoDBサーバーに配列を送信しようとしています。本文には他の変数も含まれています。ここでは、クライアント側JSコードは次のとおりです。POST本体の配列を送信する
function setupForm(){
$("#add").submit(function(event) {
event.preventDefault();
var name = $("#name").val();
var logo = $("#logo").val();
var phone = $("#phone").val();
var email = $("#email").val();
var address = $("#address").val();
var postcode = $("#postcode").val();
var openingHours = $("#openingHours").val();
var loc = [44, 44];
$.ajax({
type: "POST",
url: "http://localhost:3000/services",
data: "name=" + name + "&logo=" + logo + "&phone=" + phone + "&email=" + email + "&address=" + address + "&postcode="+ postcode +"&openingHours=" + openingHours + "&loc=" + loc,
success: function(){alert('success');}
});
});
}
そしてここでは、サーバー側のコードは次のとおりです。
exports.addWine = function(req, res) {
var wine = req.body;
console.log('Adding wine: ' + JSON.stringify(wine));
db.collection('services', function(err, collection) {
collection.insert(wine, {safe:true}, function(err, result) {
if (err) {
res.send({'error':'An error has occurred'});
} else {
console.log('Success: ' + JSON.stringify(result[0]));
res.send(result[0]);
}
});
});
}
これは、データベースではなく、この形式で追加します。私は、配列にそれをしたいと思います:
"postcode" : "ugh",
"openingHours" : "fhgfh",
"loc" : "44,44"
jQueryのserialize()関数を使用します。 –