私はnodejsのbegginerです。私はパスポートであなたを記録するシンプルなAPIを持っています。あなたを/ collectionsにリダイレクトします。私は404ノードjsエクスプレスルーティング[Can not GET:/ collection#]
var auth = express.Router();
与え配達員から
Cannot GET /collection
私はsendig試してみましたPOSTリクエスト:その部分は、問題が
Error: Not Found
at D:\Movie API\src\server\server.js:44:15
at Layer.handle [as handle_request] (D:\Movie API\src\server\node_modules\express\lib\router\layer.js:82:5)
at trim_prefix (D:\Movie API\src\server\node_modules\express\lib\router\index.js:302:13)
at D:\Movie API\src\server\node_modules\express\lib\router\index.js:270:7
at Function.proto.process_params (D:\Movie API\src\server\node_modules\express\lib\router\index.js:321:12)
at next (D:\Movie API\src\server\node_modules\express\lib\router\index.js:261:10)
at D:\Movie API\src\server\node_modules\express\lib\router\index.js:603:15
at next (D:\Movie API\src\server\node_modules\express\lib\router\index.js:246:14)
at D:\Movie API\src\server\routes\secure.js:8:11
at Layer.handle [as handle_request] (D:\Movie API\src\server\node_modules\express\lib\router\layer.js:82:5)
at trim_prefix (D:\Movie API\src\server\node_modules\express\lib\router\index.js:302:13)
at D:\Movie API\src\server\node_modules\express\lib\router\index.js:270:7
at Function.proto.process_params (D:\Movie API\src\server\node_modules\express\lib\router\index.js:321:12)
at next (D:\Movie API\src\server\node_modules\express\lib\router\index.js:261:10)
at Function.proto.handle (D:\Movie API\src\server\node_modules\express\lib\router\index.js:166:3)
at router (D:\Movie API\src\server\node_modules\express\lib\router\index.js:35:12)
withotエラーを返すPOSTリクエストである、正常に動作します
require( './ routes/auth.js')(auth、パスポート); app.use( '/ auth'、auth);
サーバールート:
var auth = express.Router();
require('./routes/auth.js')(auth, passport);
app.use('/auth', auth);
var secure = express.Router();
require('./routes/secure.js')(secure);
app.use('/', secure);
認証パスが正常に動作しています。証明書を使用してauthファイルを作成し、認証情報を使用するパスポートを作成します。成功すると、/ collectionにリダイレクトされます。 AUTH:
module.exports = function(router, passport){
router.get('/', function(req, res){
res.render('index.ejs');
});
router.get('/google', passport.authenticate('google', {scope: ['profile', 'email']}));
router.get('/google/callback',
passport.authenticate('google', { successRedirect: '/collections',
failureRedirect: '/' }));
router.get('/logout', function(req, res){
req.logout();
res.redirect('/');
})
router.get('/*', function(req, res){
res.redirect('/auth');
})
};
さて、これは安全である:
module.exports = function(router, passport){
router.use(function(req, res, next){
if(req.isAuthenticated()){
return next();
}
res.redirect('/auth');
})
// Get all collections
router.get('/collections', collection.getAll);
// Create a collection
router.post('/collection', collection.create);
// Get one product, update one product, delete one product
router.route('/collection/:id')
.get(collection.read)
.put(collection.update)
.delete(collection.delete);
}
収集モジュールの機能は、単にres.json({id:req.params.id});
で応答している/ AUTHへ/からのコレクションのリダイレクトはOKですが、POSTに/ collection私は上記のエラーが発生します。誰かが同じような問題を抱えていましたか?