Как я могу найти имя пользователя, которое владелец компьютера использует в настоящее время (при входе в систему), используя NodeJS?
Я немного искал, но ничего не нашел...
Как я могу найти имя пользователя, которое владелец компьютера использует в настоящее время (при входе в систему), используя NodeJS?
Я немного искал, но ничего не нашел...
Я не уверен, почему, но кто-то добавил ответ, а затем быстро удалил его... Я был достаточно быстрым, чтобы его поймать, и после проверки это самый короткий и эффективный способ сделать то, что я задал раньше
require("os").userInfo().username
Единственная проблема заключается в том, что в Windows 10 он возвращает первое имя используемой учетной записи владельца (только хэдз-ап). Все остальное работает отлично!
Этот один объект вы получите имя пользователя:
let os = require('os')
console.log(os.userInfo());
Определенно, самый простой способ сделать это, используя username
$ npm install username
const username = require('username');
(async () => {
console.log(await username());
//=> 'current_username'
})();
process.env.USER
Должен работать как минимум в MAC или Linux. например
let user = process.env.USER || ""
Если вам не нужны перекрестные операционные системы (только на основе nix), один из способов сделать это (помните, что exec может быть потенциально опасным для использования, если вы его параметрируете):
const Promise = require( 'bluebird' ),
exec = Promise.promisify( require( 'child_process' ).exec );
exec( 'id -un' ).then( ( username )=> {
// do something about it
});
Если вы хотите использовать bluebird для promises, не забывайте о: npm install bluebird --save
Если вы хотите получить информацию о том, как клиент запустил маршрут на вашем сервере, вам нужно проанализировать клиентский пользовательский аккаунт.
https://msdn.microsoft.com/en-us/library/ms537503(v=vs.85).aspx
Вы можете получить клиентский агент пользователя с помощью node с помощью следующих примеров: