我将socket.io从0.9.16升级到1.0.6,并用于输出如下版本:
var io = require('socket.io');
console.log("**Socket.IO Version: "+io.version);
并且会给我
**Socket.IO Version: 0.9.16
在我更新到1.0.6之后,我得到了:
**Socket.IO Version: undefined
任何帮助?谢谢!
答案 0 :(得分:3)
你可以这样做:
console.log("**Socket.IO Version: " + require('socket.io/package').version);
这个想法是加载package.json
文件,其中包含有关Node包的信息。
这是可能的,因为Node的require
也能够加载JSON模块。
来自docs:
如果找不到确切的文件名,那么节点将尝试加载所需的文件名,其中添加的扩展名为
.js
,.json
,然后是.node
。 br />.js
文件被解释为JavaScript文本文件,.json
文件被解析为JSON文本文件[...]