MongoDB (호스팅 된 MongoHQ) 데이터베이스를 사용하는 기본적으로 안정된 웹 서비스 인 첫 번째 NodeJS 응용 프로그램에서 작업하고 있습니다.nodejs mongoose 데이터베이스에 무작위로 액세스하지 못했습니다. 결과를 반환하십시오.
나는 라우팅과 데이터베이스 액세스를 돕기 위해 익스프레스와 몽구스를 사용하고 있으며, 대부분의 경우에는 잘 작동하는 것처럼 보입니다.하지만 필자가 작성한 미들웨어 메소드 중 하나가 무작위로 나옵니다. 데이터베이스에 액세스하여 시작하고 몽구스 조회를 호출하지만 응답을 얻지 못하고 결국 HTTP 요청이 시간 초과됩니다.
배경 지식, 내가 다루고있는 내 도메인 객체는 '호송'이라고 불리우며 convoyCode는 식별자로, 이것을 기반으로 검색하려고합니다.
이app.post("/JoinConvoy", findConvoy, function(request, response){
//stuff here
}
내 데이터베이스 모델이 훨씬 중요해야
var Convoy = new mongoose.Schema({
name: String
, creator: String
, startDate: Date
, destinationLat: Number
, destinationLong: Number
, currentLocations: [Locations]
});
//get the model
var Model = mongoose.model('Convoy', Convoy);
되지 않습니다 : 같은
여기에 방법을
function findConvoy(request, response, next){
var convoyCode;
if (request.method == 'GET'){
var _url = url.parse(request.url);
var queryString = qs.parse(_url.query);
convoyCode = queryString.ConvoyCode;
} else {
convoyCode = request.body.ConvoyCode;
}
console.log("Finding Convoy " + convoyCode);
Model.findOne({ name:convoyCode}, function(err, convoy){
if (err){
console.log("Error finding convoy " + err);
response.send('ERROR FINDING CONVOY', 500);
}
if (convoy){
request.ReturnedConvoy = convoy;
console.log("Found Convoy " + convoyCode);
next();
} else {
console.log("Convoy not found.");
response.send('CONVOY NOT FOUND', 404);
}
});
}
POST 메서드가 호출되는 모습이다. 모든 것이 완벽하게 작동하지만 대부분 서버를 사용하지 않고 서버를 그대로두면 다시 부팅 할 때까지 연결되지 않습니다.
ID 57C18326-7EBB-5A99-88BD-D34E9F108D98 호송 ZX12 사용자 B가
당신이 할 수있는 호송 ZX12 찾기 호송 ZX12 찾기 ZX12 에 자신의 위치를 업데이트 업데이트하려고 : 여기
은 콘솔 로그의 지난 2 회 Convoy ZX12를 찾는 방법을 두 번 봅니다. 그 방법을 호출하려고 시도했습니다. 그 전의 모든 것은 몇 시간 전에 보내진 마지막 요청의 로그입니다.몇 번이나 다시 연결하려고해도 작동하지 않습니다. 누구나 될 수있는 것에 관해서 어떤 아이디어가 있습니까?