私はすでに数時間これを理解しようとしていますが、問題の原因を見つけることができないようです.
クライアント側の Javascript では、ネストされたオブジェクトを ajax 経由でバックエンドの nodejs サーバーに投稿しています。ajax は次のようになります。
$.ajax({
type: "POST",
url: "/user/save",
data: {
"account": {
"username": $signupForm.find("input[name='register_username']").val(),
"email": $signupForm.find("input[name='register_email']").val(),
"password": $signupForm.find("input[name='register_password']").val(),
"plan": subscription
},
"stripe": stripeResponse
},
dataType: "json",
beforeSend: function(){
$.fn.showLoading();
},
success: function(data){
}
});
次に、routes/index.js でこれをキャッチします
router.post('/user/save', function(req, res){
var post_data = req.body;
console.info(post_data);
var account = post_data.account;
var card = post_data.stripe;
console.log(account);
console.log(card);
// Rest of code...
ここでの問題は、何らかの理由で と の両方post_data.account
がpost_data.stripe
未定義として返されることです。post_data 自体は実際にデータを返します。
また、 ajax を使用してデータを送信しようとしましJSON.stringify
たが、うまくいきませんでした。
また、body-parser が必要で、app.js で使用しています
問題がどこにあるのかわかりません。データが定義されていないのはなぜですか?