Node와 Express를 처음 사용하므로 지금까지 지식이 제한적입니다. Node.js, Express 및 MongoDB가있는 설치가 있습니다. 내 주요의 .js 파일에서 다음과 같이 수행하여 "3000/V1/사용자 로컬 호스트"나는 경로로 요청을 시도하고Node.js Express가 응답하지 않는 REST
MongoClient.connect(mongoUrl, function (err, db) {
if (err) {
console.log("Unable to connect to the mongoDB server. Error:", err);
} else {
//HURRAY!! We are connected. :)
console.log("Connection established to Mongo DB with connection string " + connection_string);
let port = process.env.NODE_PORT || 3000;
app.listen(port);
console.log('Server is now listening to port ' + port);
app.use(function(req, res){
req.db = db;
console.log("DB now available for all routes");
});
console.log("Using v1");
app.use('/v1', v1Route);
}
});
몽고와의 연결이 확인 설립됩니다. 나는이 같은 두 개의 파일에 두 개의 라우터가 :
v1Route :
var express = require('express')
var router = express.Router();
const userRoute = require('./userRoute');
router.use('/user', userRoute);
module.exports = router;
userRoute :
const express = require('express');
var router = express.Router();
router.get('/', function(req,res){
console.log('fetching all users');
var collection = req.db.collection('user');
collection.find().toArray(function (err, result) {
if (err) {
console.log(err);
} else if (result.length > 0) {
console.log('Found entry');
res.status(200).send('Found:' + result[0].firstName + ' ' + result[0].lastName).end();
} else {
console.log('No document(s) found with defined "find" criteria!');
res.status(200).send('No document(s) found with defined "find" criteria!').end();
}
})
});
module.exports = router;
문제는 내가 요청을 만들려고 할 때 아무 변화가 없다는 것입니다 "로컬 호스트 : 3000/v1/user "입니다. 오류가 없으며 브라우저가 멈 춥니 다. 요청을 보내면 "모든 경로에 대해 DB를 사용할 수 있습니다"라는 로그 문자열이 생깁니다.
을 포트에서 수신하기 전에'app.use'를 호출 할 수 있습니까? –
나는 그것을 시도했지만 도움이되지 않았다 –