サーバーに渡したいhtmlファイルに作成されたjsonの配列があります。結果をPOSTしようとする直前にコンソールで配列を印刷すると、すべてが正常に表示されます。これが私が渡そうとしているものの内容であり、resultsと呼ばれる変数に含まれています:
0: {id: 02934, uName: "Ben", favFood: "ice cream"}
1: {id: 02474, uName: "Sam", favFood: "ice cream"}
2: {id: 01582, uName: "Jamie", favFood: "broccoli"}
しかし、req.bodyに入ると、渡そうとしている配列に未定義の変数があることがわかりました。
以下に示すjQuery呼び出しを介してデータを送信しようとしています。
$("#sendResults").click((event) => {
console.log(results);
$.ajax({
url: '/entertimes',
type: 'POST',
data: results
});
});
私の目標は、簡単に操作できる方法でデータをサーバーに渡すことです。つまり、console.log(req.body.results [0])と入力すると、その時点でjsonの内容が出力されます。
注:コードを以下のように更新すると、情報を取得するために解析できる可能性のあるjson配列の文字列を取得できます。ただし、もっと簡単な方法がある場合は、解析する必要はありません。
$("#sendResults").click((event) => {
console.log(results);
$.ajax({
url: '/entertimes',
type: 'POST',
data: {results: JSON.stringify(results)}
});
});
サーバーとの間でデータを送受信する場合、クライアント側は常にjson形式になります。jsonは文字列です。データを送信するときは、JSON.stringify()とJSON.parse()を使用して、jsonをオブジェクトのように使用する必要があります。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加