当前位置: 首页 > 面试题库 >

有没有办法从nodejs代码中的package.json获取版本?

谢典
2023-03-14
问题内容

有没有办法package.json在nodejs应用中设置版本?我想要这样的东西

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的信息公开给客户端,因为这意味着您的所有依赖项版本号,构建和测试命令以及更多信息都将发送给客户端。
如果要在同一项目中构建服务器和客户端,则也要公开服务器端版本号。攻击者可以使用此类特定数据来更好地应对服务器上的攻击。



 类似资料:
  • 我正在将应用程序设置为在play store上上载,但play console显示错误,您需要为APK或Android应用程序包使用不同的版本代码,因为您已经有一个版本代码为1的应用程序包。我试着在Android系统中更改版本代码

  • 问题内容: 我快速浏览了Guava的源代码和文档,但似乎都没有提到版本。我想知道是否有一种方法可以在运行时获取Guava的版本信息。 如果实际上不存在此版本信息,则不必通过任何获取器进行访问。如果将其保存在某个字段中,而该字段在加载番石榴时没有得到GC,那么就足够了。 在运行时的任何地方都可以使用此版本信息吗? 我对此有非常具体的用途。我的工作很大一部分是分析Java堆转储,以识别并修复代码中导致

  • 问题内容: 因此,我使用Python 3.2.1的cElementTree解析了一些XML文件,并且在解析过程中,我注意到某些标签缺少属性信息。我想知道是否有任何简单的方法来获取xml文件中这些元素的行号。 问题答案: 查看文档,我看不到使用cElementTree做到这一点。 但是,我对lxml的XML实现版本感到幸运。使用libxml2,它的替换量几乎下降了。元素具有属性。(以及获得许多其他X

  • 问题内容: 我试图找到一种方法来查找数据库中的表的名称(如果存在)。我发现从sqlite cli我可以使用: 然后对于字段: 这显然在python中不起作用。有没有办法用python做到这一点,还是我应该只使用sqlite命令行? 问题答案: 您应该能够从表中访问表名称。 列名不能直接访问。获取它们的最简单方法是查询表并从查询结果中获取列名。

  • 问题内容: 在C / C ++中,您可以使用和获取对当前文件和行号的访问。 Go是否提供类似的功能? 问题答案: 确实可以: http://golang.org/pkg/runtime/#Caller 也可以用来获取调用函数的文件名/行号。

  • 问题内容: 我有一个文件,称之为。 有没有一种方法可以“读取”其中的内容,并获取其中的所有类的列表作为完整的类名,包括其包,例如? 我在考虑,但是似乎找不到用于检索整个类集的方法。 问题答案: 您可以将dexlib2库用作独立库(在maven中可用),以读取dex文件并获取类列表。 请注意,类名将采用“ Ljava / lang / String;”的形式,这就是它们如何存储在dex文件(和Jav