在NodeJS中查找OS用户名

如何使用NodeJS查找计算机所有者当前(login时)正在使用的用户名

我已经search了一下,但还没有find任何东西…

       

网上收集的解决方案 "在NodeJS中查找OS用户名"

我不知道为什么,但有人添加了一个答案,然后迅速删除它…我已经足够快,赶上它,检查后,这是做我以前问的最短和最有效的方式:

require("os").userInfo().username

唯一的问题是,在Windows 10中,它返回已经使用的所有者帐户的名字(只是一个头)。 其他一切工作都很好!

 one object you will get username var os= require('os') console.log(os.userInfo()); 

如果不需要跨操作系统(只是基于* nix的),那么你可以这样做(请记住,如果你使用参数化exec,exec可能会有风险):

 const Promise = require( 'bluebird' ), exec = Promise.promisify( require( 'child_process' ).exec ); exec( 'id -un' ).then( ( username )=> { // do something about it }); 

如果你想使用蓝鸟的承诺,不要忘了: npm install bluebird --save

如果你想获得有关客户端在服务器上调用路由的信息,则必须parsing客户端useragent。

https://msdn.microsoft.com/en-us/library/ms537503(v=vs.85).aspx

您可以使用这些示例获取带有节点的客户端用户代理:

如何在nodejs环境中处理用户代理?