1
HTTPリクエストのJSONレスポンス本体がサーバー側で歪んでいます。それは1つのキーを持ち、その要素は配列です。これは、jQueryのAJAXを使用して、私のHTTPリクエストです:Ajax HTTPリクエストはリクエスト本体の配列を持つJSONを変更します
function dbInsert(event_arr) {
$.ajax({
url: "http://localhost:5000/insertdata",
type: "POST",
data: JSON.stringify(event_arr),
success: function(events) {
console.log("TestInsert was successfully executed");
},
error: function(textStatus, errorThrown) {
console.error("The following error occurred: " + textStatus, errorThrown);
}
});
私はコンソールにJSON.stringify(event_arr)を印刷する場合、これは、それは次のようになります。ここでは、サーバー側で、その後
{"results": [{"event_client": "name1","event_date": "date1"}, {"event_client": "name2", "event_date": "date2"}]}
私のDBインサート(で呼び出されたJSON.stringifyは())JSONを読み込む方法を台無しにまで思わ
// returns [object, Object], cannot be passed into JSON.parse
console.log(request.body);
var temp = JSON.stringify(request.body);
var temp2 = JSON.parse(temp);
// prints {"{\"results\":":{"{\"event_name\":\"name1\",\"event_date\":\"date1\"},{\"event_name\":\"name2\",\"event_date\":\"date2\"}":""}}
console.log(temp);
// prints { '{"results":': { '{"event_name":"name1","event_date":"date1"},{"event_name":"name2","event_date":"date2"}': '' } }
console.log(temp2);
、およびI:レスポンスボディを理解し、JSON形式で遊んで私の様々な試みですドンこの内部フォーマットエラーを回避する方法はありません!
:** 'のcontentType: "アプリケーション/ jsonの"' **、中にあなたの** '$アヤックス({})' **機能とあなたがサーバー側で何を得るか再度確認してください。 –
それはトリックです!そんなに簡単な修正でした。ありがとうございました。 – emilyk