Обнаружьте пользователя, вошел в систему использующий компьютеры Java

Вы должны попробовать добавить фильтр перед вашей картой. Используя фильтр, ваша карта не получит вызов до тех пор, пока пользователь не будет установлен.

return this.userSrv.user.pipe(
   filter(Boolean),
   map((user: UserModel) => request.clone(
      {setParams: {'access-token': user.accessToken}}
   )),
   mergeMap(request => next.handle(request))
);
6
задан VansFannel 7 April 2009 в 11:06
поделиться

4 ответа

System.getProperty("user.name") 
12
ответ дан 8 December 2019 в 04:55
поделиться

Если Вам нужно к доменному имени, можно использовать это:

  com.sun.security.auth.module.NTSystem NTSystem = new
          com.sun.security.auth.module.NTSystem();
  System.out.println(NTSystem.getName());
  System.out.println(NTSystem.getDomain());

До свидания.

12
ответ дан 8 December 2019 в 04:55
поделиться

Примечание: System.getProperty ("user.name") будет работать, только если пользователь запустит приложение. Если программа запускается Системой или приложением, таким как LANDesk, пользователь будет отображаться как «СИСТЕМА» (в домене «АВТОРИТЕТ NT»).

В этом случае второе решение, использующее NTSystem, вернет правильные результаты.

0
ответ дан 8 December 2019 в 04:55
поделиться

Я заметил, что автор темы впоследствии спрашивает в комментариях, может ли он / она использовать его в веб-приложении Java, на которое каждый раз отвечал «нет». Это верно, если вы запускаете конкретный код на стороне сервера, но не если вы запускаете его на стороне клиента в виде апплета или jnlp, который встроен в запрошенную страницу jsp / html. Однако впоследствии он должен отправить необходимую информацию на сервер.

0
ответ дан 8 December 2019 в 04:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: