我是ajax的初学者,因此我决定暂时使用jquery ajax,在使用ajax之前,我创建了简单的登录/注册页面,并使用bodyparser进行请求 当密码或用户名不正确时,它将重新加载,然后向用户发送响应,其中之一是错误的,并且据我所知,ajax无需重新加载即可工作,并且 当登录此处的信息不正确时,如何添加ajax代码
app.post('/login',
async (req, res) => {
try {
const { username, password } = req.body;
const user = await User.findOne({ username, password }).select('-password').lean();
if (!user) {
res.send('User: ' + username + ' not registered');
return;
}
req.session.user = user;
res.redirect('/dash')
return res.status(200).send('Session ID: ' + req.sessionID);
}
catch (error) {
res.status(500).send(error.message);
}
});
答案 0 :(得分:1)
尝试这样的事情:
$('#login-button').on('click', function(event) {
event.preventDefault();
var username = $('#username').val(), password = $('#password').val();
$.ajax({
type: 'POST',
data: JSON.stringify({ username: username, password: password }),
contentType: "application/json; charset=utf-8",
url: 'http://localhost:8000/login',
success: function(sessionID) {
console.log(sessionID);
},
error: function(xhr, status, err) {
var errMsg = xhr.responseText; // Your error msg
$('#errMsg').html(errMsg);
}
});
});