Ich bin leider blutiger Anfänger bei der Adapter-Entwicklung und habe daher sehr grundlegende Fragen:
Ich möchte per https POST-request einen "username" und "password" (gehashed) an eine URL schicken. Aktuell verwende ich dafür Axios.
- Was muss ich tun, damit ich das Passwort nicht im Klartext sondern gehashed übermittel? Ich habe dazu nichts gefunden. In dem Pyhton3 Code, den ich Portieren möchte für ioBroker wird die die hashlib verwendet und das Passwort folgendermaßen verschlüsselt:
passwordHashed = hashlib.sha1(password.encode()).hexdigest()
- Die URL, die ich versuche zu erreichen ist die "https://www.myidm.at/api/user/login". Hier bekomme ich mit dem folgenden Code allerdings immer ein "AxiosError: Request failed with status code 404". Die baseURL ist allerdings erreichbar. Liegt es an den Headern?
this.idmApiClient = axios.create({
baseURL: 'https://www.myidm.at',
timeout: 1000,
headers: {
'User-Agent': 'IDM App (Android)'
},
data: {
username: this.config.clientLogin,
password: 'abc'
},
responseType: 'json',
responseEncoding: 'utf8',
httpsAgent: new https.Agent({
rejectUnauthorized: false,
})
});
try {
const installations = await this.idmApiClient.post('/api/user/login');
this.log.info('Successfully returning Installation repsonse');
this.log.debug(`response: ${installations.status}: ${JSON.stringify(installations.data)}`);
} catch (err) {
this.log.error(err);
// AxiosError: Request failed with status code 404
}
Für jeden Suchbegriff, den ihr mir nennen könnt bin ich sehr dankbar