定义后无法将可选参数传递给express
Posted
技术标签:
【中文标题】定义后无法将可选参数传递给express【英文标题】:Cannot pass optional parameter into express after defining it 【发布时间】:2015-10-16 04:06:11 【问题描述】:我使用下面的param
函数定义了我的可选参数,但是当我尝试使用 Postman 传入可选参数时,我得到一个 Reference Error 'off' is not defined
。我不知道如何在下面的第二个函数中使用我为参数传入的值,并且我假设我对它的错误使用是导致错误的原因。我正在尝试在第一个函数中定义我的参数。
router.param('off', function(req, res, next, off)
req.offset = off;
next();
);
我在这里使用可选参数定义我的路线
router.get('/messages/:offset', function(request, res)
ctxioClient.accounts(ID).messages().get(limit: 100, offset: off,
function ( err, response)
);
);
【问题讨论】:
【参考方案1】:可选参数用?
定义
router.get('/messages/:offset?', function(request, res)
var offset = req.params.offset || 0;
// make 0 if no offset is present
ctxioClient.accounts(ID).messages().get(limit: 100, offset: offset,
function ( err, response)
);
);
【讨论】:
以上是关于定义后无法将可选参数传递给express的主要内容,如果未能解决你的问题,请参考以下文章