2017-07-14 4 views
0

私は問題があり、原因を突き止めるのにかなり時間を費やしていますが、無駄です。私は研究して、私が正しくやっているように感じているが、明らかに何かを逃している。ここでexpress.routerは別のファイルに記載されているルートがある場合は404をスローします

は私app.jsです:

var express = require('express'); 
var app  = express(); 
var port  = process.env.PORT || 8080; 
var bodyParser = require('body-parser'); 
var session  = require('express-session'); 

app.use(express.static('./server/static/')); 
app.use(express.static('./client/dist/')); 

// tell the app to parse HTTP body messages 
app.use(bodyParser.urlencoded({ extended: false })); 
app.use(cookieParser()); // read cookies (needed for auth) 

//routes 
var authRoutes = require('./server/routes/auth'); 
app.use('/auth', authRoutes); 

app.listen(3000,() => { 
    console.log('Server is running on http://localhost:3000); 
}); 

そしてここでは、個別の認証(ルートファイル)である。これを実行した後

var express = require('express'); 
var router = express.Router(); 

router.post('/signup', (req, res, next) => { 
    console.log("im in"); 
}); 

module.exports = router; 

、私は404の応答を取得: POST http://localhost:3000/signup 404(見つからない)

私がapp.jsファイルにルートを置くと、希望の出力が得られます。誰かが私が間違っていることを理解するのを助けてくれますか?

答えて

2

/authで始まるパスにauthRoutesを公開http://localhost:3000/auth/signup

app.use('/auth', authRoutes);を試してみてください。

+0

はい、それです:)ありがとう@Kryten。今はすべてが理にかなっています。ドキュメントとすべて。 – learner

関連する問題