0
여기라는 내 코드입니다 : 내가 브라우저에서 localhost:5000/api/questions/js/5
을 열 때Express.js 방법은 두 번
app.get('/api/questions/:group/:limit', function(req, res) {
var group = req.params.group;
var limit = req.params.limit;
console.log('123');
return QuestionModel.find({group: group})
.sort({ creation_timestamp: -1 })
.limit(limit)
.exec(function(err, questions) {
if(!err) {
return res.send({ status: 'OK', result: questions });
} else {
res.statusCode = 500;
log.error('Internal error(%d): %s', res.statusCode, err.message);
return res.send({ error: 'Server error' });
}
});
});
내가 방법은 두 번 호출 된 것을 볼 수 있습니다
123
123
나는이를 다시 작성하는 경우 이 메소드는 한 번만 호출됩니다.
app.get('/api/questions/:group/:limit', function(req, res) {
var group = req.params.group;
var limit = req.params.limit;
console.log('123');
return;
});
첫 번째 경우에는 메소드가 두 번 호출되는 이유는 무엇입니까? 어떻게 이것을 피할 수 있습니까?
업데이트 됨 : Chrome에서는 두 번 작동하지만 Safari 및 Firefox에서는 한 번만 작동합니다. 브라우저 콘솔에 메시지가 없습니다.
쿼리가 매우 오랜 시간이 걸리고 브라우저가 재 시도를 시작합니까? – Max
아니요, 2 초 미만입니다. – demas
Chrome에서만 문제가 있습니다. 내 질문을 업데이트했습니다. – demas