私は一日中、ajax経由でExpressにjsonデータを送信するのに問題がありました。私のajaxは次のようになります。
$('#saveClause').click(function () {
var username = document.getElementById('postUserName').innerHTML;
var clauseTitle = document.getElementById('modalTitle').innerHTML;
var clauseDescription = document.getElementById('modalDescription').innerHTML;
var clauseText = document.getElementById('modalText').innerHTML;
$.ajax({
url: "/classes/updateAssignment",
type: "post",
dataType: "json",
data: {
username: username,
title: clauseTitle,
description: clauseDescription,
text: clauseText
},
cache: false,
contentType: "application/json",
complete: function () {
console.log("complete");
},
success: function () {
console.log("success");
},
error: function () {
console.log("Process Error");
}
});
});
ExpressClassesのルートは次のようになります。
router.post('/updateAssignment', function (req, res) {
console.log(req.body.username)
console.log(req.body.title);
console.log(req.body.description);
console.log(req.body.text);
res.type('json');
res.send({
some: JSON.stringify({
response: 'json'
})
});
});
この JSON オブジェクトを使用して、郵便配達員の投稿リクエストを URL に発行しました。
{
"username":"testing",
"title":"123",
"description":"j456",
"text":"seven"
}
Expressはコンソールにすべての詳細を問題なく記録したので、予期しないトークンuエラーが発生するため、ajaxリクエストに問題があるはずですが、原因はわかりません。何か案は?
を削除してみてください contentType: "application/json",
ヘッダーのないpostmanを使用した場合、おそらくこれがパーサーの失敗の原因です。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加