code: function attachMiddleware(app, options) {
      // 日志中间件
      app.use(log.express());
      // 初始化中间件
      app.use(require('./lib/middleware/init'));
      // 设置上下文
      app.use(setContext);
  
      // 附加自定义中间件
      beforeMiddlewares.forEach(function (fn) {
          app.use(fn);
      });
  
      // 路由绑定
      router.use(app);
  
      // 附加自定义中间件
      afterMiddlewares.forEach(function (fn) {
          app.use(fn);
      });
  
      // 页面渲染中间件
      var renderHTML = require('./lib/middleware/renderHTML');
      app.use(renderHTML({
          templateData: options.templateData,
          indexFile: options.indexFile
      }));
      // 错误处理
      app.use(require('./lib/middleware/error'));
  }
docs: 附加中间件
  
  @param {Object} app App对象
  @param {Object} options 配置项