有没有在nodejs代码中从package.json获取版本的方法?
有没有办法在nodejs应用程序中获取package.json
中设置的版本? 我想要这样的东西
var port = process.env.PORT || 3000
app.listen port
console.log "Express server listening on port %d in %s mode %s", app.address().port, app.settings.env, app.VERSION
我发现下面的代码片段最适合我。 由于它使用'require'来加载package.json,所以它不管当前的工作目录。
var pjson = require('./package.json');
console.log(pjson.version);
一个警告,由@Pathogen提供:
使用browserify做这件事有安全隐患。
注意不要将package.json暴露给客户端,因为这意味着所有依赖版本号,构建和测试命令以及更多内容都会发送到客户端。
如果您在同一个项目中构建服务器和客户端,则也会暴露您的服务器端版本号。
攻击者可以使用这些特定数据来更好地适应您的服务器的攻击。
如果你的应用程序是用'npm start'启动的,你可以简单地使用:
process.env.npm_package_version
有关更多详细信息,请参阅package.json vars。
使用ES6模块,您可以执行以下操作:
import {version} from './package.json';
链接地址: http://www.djcxy.com/p/27675.html
上一篇: Is there a way to get version from package.json in nodejs code?
下一篇: Compositional advantage of Lodash/Underscore syntax over vanilla JS syntax