Я не могу показаться, чтобы получить мой .get ('/: post_id) маршрут на работу и я понятия не имею, почему ...Экспресс 4 REST API маршруты в подпапках
моя структура папок, как это:
- app.js
- маршруты
- --api
- ---- blog.js
существу blog.js находится в папке маршруты/апи
в app.js у меня есть это:
var blog = require('./routes/api/blog');
app.use('/api/blog', blog);
в blog.js у меня есть это:
//ALL API calls at /api/blog/:post_id
router.route('/:posts_id')
//Retrieve and individual post in JSON by id
.get(function(req, res) {
Post.findById(req.params.posts_id, function(err, post) {
if (err) {
res.send("error");
} else {
res.json(post);
}
});
});
есть запрос на получение и отправку в той же папке, и они работают нормально, но в итоге я получаю ошибку 404 из файла app.js и никогда не достигает пути: posts_id ... любые идеи?
Так я попробовал это, но это не похоже на работу ... тот довольно много же, как и у меня есть, за исключением того, что удаляет «/» апи часть приложения app.use требуют. это приводит к сбою моего сервера, поскольку модуль отсутствует ./routes/blog. Спасибо, хотя –
api.js и blog.js - это тот же каталог? Я не знаю, почему вы пишете var blog = require ('./ routes/api/blog'); -> like blog.js находится в каталоге api. – KibGzr
Вам не хватает модуля экспорта? module.exports = router; – KibGzr