서버 측에서 ajax (사용자 이름 전송)를 사용하여 양식 데이터를 보내려고하고 서버 측에서 SQL 쿼리를 수행하고 결과를 내 템플리트 (EJS)에 전달하려고합니다. 내 서버 측에서 Express js - ajax 호출에서 응답을 얻는 방법?
(ajaxTest.js)router.post('/', function(req, res){
console.log(req.body);
var query = connection.query("select * from account where username='" + req.body.username+ "'",function (err,result) {
console.log(query.sql);
if (err) {
console.error(err);
return;
}
console.error(result);
res.send("Result "+JSON.stringify(result));
});
}); 내 템플릿에서
(ajaxTest.ejs)
$(document).ready(function () {
$("#submit").on("submit",function (e) {
e.preventDefault();
data = {};
data.username = 'user101';
$.ajax({
type: 'POST',
data: JSON.stringify(data),
contentType: 'application/json',
url: 'http://localhost:3000/ajaxtest',
success: function(data) {
console.log('success');
console.log(JSON.stringify(data));
}
});
})
});
위의 코드에서 결과는 내 콘솔에 성공적으로 기록되지만 '성공'및 데이터는 반환되지 않습니다. 결과가 템플릿 (ajaxTest.ejs)으로 다시 전송되지 않는 이유가 있습니까?
상황에 대한 의견을 보내 주시면 대단히 감사하겠습니다.
왜'res.json (JSON.stringify (결과를))'사용하지? – Aer0
@ Aer0 나는 res.json도 시험해 보았지만 작동하지 않습니다. 이것이 성공 데이터를 되 찾는 올바른 방법입니까? –