【问题标题】:Kraken.js 404 and 500 middleware templatesKraken.js 404 和 500 中间件模板
【发布时间】:2015-11-27 16:16:36
【问题描述】:

是否可以在 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"]
  }
},

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

【问题讨论】:

    标签: javascript node.js express middleware kraken.js


    【解决方案1】:

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

    ...

    对于特定于路由的 404 页面,您可以将 kraken 404 中间件直接放在您想要为其设置不同 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 模板将是默认模板,对于我想要的任何路由,都可以使用上述方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-06-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-07-04
      • 2011-12-18
      相关资源
      最近更新 更多