Как я нахожу идентификатор пользователя входом в систему (Python под *ОТКЛОНЯЮТ),

setConsumption() должно иметь только data в качестве тела PUT вместо data[0].

setConsumption(data: consumption) {
    return new Promise((resolve, reject) => {
      this.http.put(`http://localhost:8080/savukelaskuri/webresources/kulutukset/${data.date}`, data)
        .subscribe((data) => {
          resolve(data);
        }, (error) => {
          reject(error);
        });
    })
  }

В классе ConsummptionResource для putJson () вместо типа string

String consumption = json.getString("kulutus");

consumption необходимо указать целое число

int consumption = json.getint("kulutus");
11
задан Slava V 16 November 2008 в 22:16
поделиться

2 ответа

Вы могли бы хотеть взглянуть на pwd модуль в Python stdlib, например:

import pwd
pw = pwd.getpwnam("nobody")
uid = pw.pw_uid

это использует/etc/passwd (хорошо, технически это использует posix C API, таким образом, я предполагаю, что это могло бы работать над ОС, если бы это не использовало/etc/passwd, но выставило необходимые функции), но является более чистым, чем парсинг его вручную

20
ответ дан 3 December 2019 в 04:15
поделиться

Никогда непосредственно сканирование /etc/passwd.

Например, в системе Linux я администрирую, учетные записи пользователей не включены /etc/passwd, но на сервере LDAP.

Корректный путь состоит в том, чтобы использовать getpwent/getgrent и связанные функции C (как в ответе @TFKyle), который получит информацию о корректном пути к каждой системе (на Linux glibc, это читает /etc/nsswitch.conf знать который динамические библиотеки NSS загрузиться для получения информации).

5
ответ дан 3 December 2019 в 04:15
поделиться
Другие вопросы по тегам:

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