Javascript 节点快速Kraken路由窗口

Javascript 节点快速Kraken路由窗口,javascript,node.js,express,kraken.js,Javascript,Node.js,Express,Kraken.js,嗨,我正在使用kraken和节点上的express应用程序。我在windows上遇到问题。我有一个路由,例如“register/:appname?”并且appname是一个可选参数。因为kraken(正如我所理解的)关注这个控制器的目录结构,所以它应该是这样的:controllers->register->:appname?我说得对吗?如果是,这在windows上是一个问题,因为我们无法创建带有“?”的文件夹,请尝试使用类似以下内容的controllers\register.js: module

嗨,我正在使用kraken和节点上的express应用程序。我在windows上遇到问题。我有一个路由,例如“register/:appname?”并且appname是一个可选参数。因为kraken(正如我所理解的)关注这个控制器的目录结构,所以它应该是这样的:controllers->register->:appname?我说得对吗?如果是,这在windows上是一个问题,因为我们无法创建带有“?”的文件夹,请尝试使用类似以下内容的
controllers\register.js

module.exports = function (router) {
    router.get('/:appname?', function (req, res) {
    });
}
module.exports = function (router) {
    router.get('/register/:appname?', function (req, res) {
        var app_name = req.params.appname ? req.params.appname: '';
    });
};
controllers\index.js
使用以下命令:

module.exports = function (router) {
    router.get('/register/:appname?', function (req, res) {
    });
};

URL中的参数不是目录结构的一部分。根据以上阿雷德尔的例子,您可以这样做:

module.exports = function (router) {
    router.get('/:appname?', function (req, res) {
    });
}
module.exports = function (router) {
    router.get('/register/:appname?', function (req, res) {
        var app_name = req.params.appname ? req.params.appname: '';
    });
};