-1
私はnodejs/express/mongodbを使って安らかなAPIを構築しています。 SMS検証を実装しようとしているので、ユーザーはsms経由でコードを受信してアカウントを確認できます。NodeJs快適なAPIがパラメータIDを返さない
このルートURLからreq.params.idを返すのに問題があります。
http://localhost:3000/api/account/123/sms/
経路
app.use('/api/account', require('./app/routes/account.route'));
app.use('/api/account/:id/sms', require('./app/routes/sms.route'));
account.route
'use strict';
var express = require('express');
var router = express.Router();
var controller = require('../controllers/account.controller');
controller = new controller();
router.get('/', controller.index.bind(controller));
router.get('/:id', controller.show.bind(controller));
router.post('/', controller.store.bind(controller));
router.put('/:id', controller.update.bind(controller));
router.delete('/:id', controller.destroy.bind(controller));
module.exports = router;
sms.route
'use strict';
var express = require('express');
var router = express.Router();
var controller = require('../controllers/sms.controller');
controller = new controller();
router.post('/', controller.store);
module.exports = router;
sms.controller
'use strict';
var User = require('../models/user.model');
var Token = require('../models/token.model');
var config = require('../../config/app');
var SMS = require('../../modules/sms');
class SmsController {
store(req, res) {
return res.json(req.params.id);
}
}
module.exports = SmsController;
私はそのエンドポイント(URL)を試して打つために郵便配達員を使います。私は123アカウントidを返すことを期待していますが、何も返さない/空白/空白です。
郵便配達?置く?取得する?私はGET '/ api/account /:id/sms'を扱うルートを見ません。 –
[' mergeParams'](http://expressjs.com/en/4x/api.html#express.router) 。 – robertklep
@Kevin Bええ、それはルートパラメータ付きの投稿要求です。あなたは私のsms.routeでルートを見ることができます – KayTokyo