私は2つのルータファイルを持っています。 1つはビューのルーティング用で、もう1つはAPIリクエスト用です。NodeJS - 複数のルータファイル
var routes = require('./routes/index'); //View Router
var api = require('./routes/api'); //API Router
app.use('/', routes);
app.use('/api', api);
これは/ API要求の場合に失敗します。
は、私が使用してルーティングを設定しようとしています。ルーティングの1つを削除すると、他の作業が行われます。私はまた、
routes(app);
api(app);
を試してみました。しかし、これはあまりにも失敗します。どのようなアイデアが問題になるのでしょうか?追加の詳細が必要な場合はお知らせください。
ルータ/ index.js
var express = require('express');
var router = express.Router();
var Promise = require('bluebird');
var nforce = require('nforce');
var org = require('../lib/connection');
/* GET home page. */
router.get('/', function(req, res, next) {
res.render('index', { title: 'App' });
});
router.get('/accounts', function(req, res, next){
console.log(org);
res.render('partials/' + name);
org.query({query: 'Select Id, Name, Type, Industry, Rating From Account Order By LastModifiedDate DESC'})
.then(function(results){
console.log(results);
res.render('accounts', {title: 'Accounts', records: results.records});
});
});
router.get('/partials/:name', function(req, res, next){
var name = req.params.name;
console.log(name);
res.render('partials/' + name);
});
router.get('/api/:name', function(req, res, next){
var name = req.params.name;
console.log(name);
res.render('api/' + name);
});
module.exports = router;
/routers/api.js
var express = require('express');
var router = express.Router();
var Promise = require('bluebird');
var nforce = require('nforce');
var org = require('../lib/connection');
/* GET home page. */
router.get('/getAccounts', function(req, res, next) {
console.log('in API router...');
org.query({query: 'Select Id, Name, Type, Industry, Rating From Account Order By LastModifiedDate DESC'})
.then(function(results){
console.log(results);
res.json({'accounts': results.records});
});
});
module.exports = router;
ルーター自体を見せて、テストしているURLを表示しなければなりません。 – jfriend00
ルータを追加しました –