Kraken.js 404 和 500 中间件模板

Kraken.js 404 and 500 middleware templates

是否可以在 kraken.js 应用程序中对 404 和 500 错误使用不同的模板?下面是如何启用中间件并告诉它使用什么模板。对于我的应用程序,我需要根据用户所在网站的哪个部分使用不同的模板。

"fileNotFound": {
  "enabled": true,
  "priority": 130,
  "module": {
    "name": "kraken-js/middleware/404",
    "arguments": ["tamarin/errors/404"]
  }
},
"serverError": {
  "enabled": true,
  "priority": 140,
  "module": {
    "name": "kraken-js/middleware/500",
    "arguments": ["tamarin/errors/500"]
  }
},

我可以自己修改中间件以接受多个模板和某种逻辑来选择哪个模板,但我想知道是否有其他解决方案。

在 kraken github 回购上回答:https://github.com/krakenjs/kraken-js/issues/434

...

对于特定于路由的 404 页面,您可以直接在您希望具有不同 404 模板的路由上使用 kraken 404 中间件。这是我如何做到的。

var _404  = require('kraken-js/middleware/404');

module.exports = function(router) {

    router.get("/:lang?/*", _404('tamarin/admin/404'),  function(req, res) {
...

这很棒,因为我在 config.json 中配置的 404 模板将是默认模板,对于我想要的任何路由,都可以使用上述方法。