Express支持多工作环境,比如生产环境 和开发环境 等。开发者可以使用configure() 方法根据当前环境的需要进行设置,当configure() 没有传入环境名称时,它会在各环境之前被调用(一回注:相当于被各个明确环境所共享)。
下面的示例我们只抛出异常(dumpException ),并且在开发模式 对异常堆栈的输出做出响应,但是不论对开发或者生产环境我们都使用了methodOverride 和bodyParser 。
// 定义共享环境 app.configure(function(){ app.use(express.methodOverride()); app.use(express.bodyParser()); app.use(app.router); }); // 定义开发环境 app.configure('development', function(){ app.use(express.static(__dirname + '/public')); app.use(express.errorHandler({ dumpExceptions: true, showStack: true })); }); // 定义生产环境 app.configure('production', function(){ var oneYear = 31557600000; app.use(express.static(__dirname + '/public', { maxAge: oneYear })); app.use(express.errorHandler()); });要修改环境,可以通过设置NODE_ENV 环境变量来实现,例如:$ NODE_ENV=production node app.js这很重要 ,因为许多的缓存机制只有在生产环境才会启用 。

本文介绍Express框架中如何针对不同环境(如开发环境和生产环境)进行配置,包括共享配置项和特定环境下的设置,如错误处理、静态文件服务及缓存机制的启用。
12万+

被折叠的 条评论
为什么被折叠?



