NEWS
rejectUnauthorized: false funktioniert nicht mehr
-
Hallo,
nachdem ich den JS Apdapter heute aktualisiert habe funktioniert der auf
const request = require('request').defaults({ rejectUnauthorized: false });nicht mehr. Das hier ist der Fehler im Log:
javascript.0 2020-06-04 15:53:48.773 error (15278) TypeError: require(...).defaults is not a function
javascript.0 2020-06-04 15:53:48.773 error (15278) ^
javascript.0 2020-06-04 15:53:48.773 error (15278) const request = require('request').defaults({ rejectUnauthorized: false });Hier mal das ganze Script. Bitte nicht gleich verhauen bin total unerfahren in Javascript.
const request = require('request').defaults({ rejectUnauthorized: false }); const klemmen = $('My_Devices.0.Digitalstrom.Klemmen.*'); var dssip = getState("My_Devices.0.Digitalstrom.Server.IP-Adresse").val; var dssport = getState("My_Devices.0.Digitalstrom.Server.Port").val; var dssappltoken = getState("My_Devices.0.Digitalstrom.Token.Applicationtoken").val; on({id: /^My_Devices.0.Digitalstrom.Räume..+.Light/, change: "any"}, function (obj) { var value = obj.state.val; var zone = obj.id.replace("My_Devices.0.Digitalstrom.Räume.", "").replace(".Light","") var name = obj.name console.log(`ID = ${zone}, Room = ${name}, State = ${value}`); request(`https://${dssip}:${dssport}/json/system/loginApplication?loginToken=${dssappltoken}`, { json: true}, (err, res, body) => { if (err) { return console.log(err); } var sessiontoken = body.result.token; console.log(`SessionToken = ${sessiontoken}`); request(`https://${dssip}:${dssport}/json/property/query?query=/apartment/zones/*(ZoneID, name)/groups/group1(lastCalledScene)&token=${sessiontoken}`, { json: true }, (err, res, body) => { //console.log(body.result); var Zones = body.result.zones; // Zones.length - 1 because last Zone is empty console.log(`Zone Count = ${Zones.length - 1}`); for(var zonecounter=0; zonecounter < Zones.length - 1; zonecounter++){ var ZoneID = Zones[zonecounter].ZoneID var Room = Zones[zonecounter].name var lastCalledScene = (Zones[zonecounter].group1[0].lastCalledScene) //console.log(`ZoneID = ${ZoneID}`); //console.log(`Room = ${Room}`); //console.log(`lastCalledScene = ${lastCalledScene}`); setState(`My_Devices.0.Digitalstrom.Räume.${ZoneID}.lastCalledScene`,lastCalledScene) console.log(`Reading from DSServer lastCalledScene Value : ${lastCalledScene} of RoomID : ${ZoneID} `) }; }); if(value == true) { try { console.log(`https://${dssip}:${dssport}/json/zone/callScene?id=${zone}&groupID=1&sceneNumber=5&force=true&token=${sessiontoken}`) request({url: `https://${dssip}:${dssport}/json/zone/callScene?id=${zone}&groupID=1&sceneNumber=5&force=true&token=${sessiontoken}`}, function(error, response, body) { console.log(body); //setState(`My_Devices.0.Digitalstrom.Räume.${ZoneID}.lastCalledScene`,5) console.log(`Setting lastCalledScene to 5 of RoomID : ${zone}`); }); } catch (e) { console.error(e); } } if(value == false) { try { console.log(`https://${dssip}:${dssport}/json/zone/callScene?id=${zone}&groupID=1&sceneNumber=0&force=true&token=${sessiontoken}`) request({url: `https://${dssip}:${dssport}/json/zone/callScene?id=${zone}&groupID=1&sceneNumber=0&force=true&token=${sessiontoken}`}, function(error, response, body) { console.log(body); //setState(`My_Devices.0.Digitalstrom.Räume.${ZoneID}.lastCalledScene`,0) console.log(`Setting lastCalledScene to 0 of RoomID : ${zone}`); }); } catch (e) { console.error(e); } } }); }); console.log("#################################################"); -
Hallo,
nachdem ich den JS Apdapter heute aktualisiert habe funktioniert der auf
const request = require('request').defaults({ rejectUnauthorized: false });nicht mehr. Das hier ist der Fehler im Log:
javascript.0 2020-06-04 15:53:48.773 error (15278) TypeError: require(...).defaults is not a function
javascript.0 2020-06-04 15:53:48.773 error (15278) ^
javascript.0 2020-06-04 15:53:48.773 error (15278) const request = require('request').defaults({ rejectUnauthorized: false });Hier mal das ganze Script. Bitte nicht gleich verhauen bin total unerfahren in Javascript.
const request = require('request').defaults({ rejectUnauthorized: false }); const klemmen = $('My_Devices.0.Digitalstrom.Klemmen.*'); var dssip = getState("My_Devices.0.Digitalstrom.Server.IP-Adresse").val; var dssport = getState("My_Devices.0.Digitalstrom.Server.Port").val; var dssappltoken = getState("My_Devices.0.Digitalstrom.Token.Applicationtoken").val; on({id: /^My_Devices.0.Digitalstrom.Räume..+.Light/, change: "any"}, function (obj) { var value = obj.state.val; var zone = obj.id.replace("My_Devices.0.Digitalstrom.Räume.", "").replace(".Light","") var name = obj.name console.log(`ID = ${zone}, Room = ${name}, State = ${value}`); request(`https://${dssip}:${dssport}/json/system/loginApplication?loginToken=${dssappltoken}`, { json: true}, (err, res, body) => { if (err) { return console.log(err); } var sessiontoken = body.result.token; console.log(`SessionToken = ${sessiontoken}`); request(`https://${dssip}:${dssport}/json/property/query?query=/apartment/zones/*(ZoneID, name)/groups/group1(lastCalledScene)&token=${sessiontoken}`, { json: true }, (err, res, body) => { //console.log(body.result); var Zones = body.result.zones; // Zones.length - 1 because last Zone is empty console.log(`Zone Count = ${Zones.length - 1}`); for(var zonecounter=0; zonecounter < Zones.length - 1; zonecounter++){ var ZoneID = Zones[zonecounter].ZoneID var Room = Zones[zonecounter].name var lastCalledScene = (Zones[zonecounter].group1[0].lastCalledScene) //console.log(`ZoneID = ${ZoneID}`); //console.log(`Room = ${Room}`); //console.log(`lastCalledScene = ${lastCalledScene}`); setState(`My_Devices.0.Digitalstrom.Räume.${ZoneID}.lastCalledScene`,lastCalledScene) console.log(`Reading from DSServer lastCalledScene Value : ${lastCalledScene} of RoomID : ${ZoneID} `) }; }); if(value == true) { try { console.log(`https://${dssip}:${dssport}/json/zone/callScene?id=${zone}&groupID=1&sceneNumber=5&force=true&token=${sessiontoken}`) request({url: `https://${dssip}:${dssport}/json/zone/callScene?id=${zone}&groupID=1&sceneNumber=5&force=true&token=${sessiontoken}`}, function(error, response, body) { console.log(body); //setState(`My_Devices.0.Digitalstrom.Räume.${ZoneID}.lastCalledScene`,5) console.log(`Setting lastCalledScene to 5 of RoomID : ${zone}`); }); } catch (e) { console.error(e); } } if(value == false) { try { console.log(`https://${dssip}:${dssport}/json/zone/callScene?id=${zone}&groupID=1&sceneNumber=0&force=true&token=${sessiontoken}`) request({url: `https://${dssip}:${dssport}/json/zone/callScene?id=${zone}&groupID=1&sceneNumber=0&force=true&token=${sessiontoken}`}, function(error, response, body) { console.log(body); //setState(`My_Devices.0.Digitalstrom.Räume.${ZoneID}.lastCalledScene`,0) console.log(`Setting lastCalledScene to 0 of RoomID : ${zone}`); }); } catch (e) { console.error(e); } } }); }); console.log("#################################################");@AkiraFFM sagte in rejectUnauthorized: false funktioniert nicht mehr:
const request = require('request').defaults({ rejectUnauthorized: false });
Geht es, wenn du diese erste Zeile wie folgt änderst:
request = request.defaults({ rejectUnauthorized: false }); -
@AlCalzone
Nein jetzt mit dem Error
javascript.0 2020-06-04 16:24:14.604 error (15278) TypeError: request.defaults is not a function
javascript.0 2020-06-04 16:24:14.604 error (15278) ^
javascript.0 2020-06-04 16:24:14.604 error (15278) request = request.defaults({ rejectUnauthorized: false }); -
@AlCalzone
Nein jetzt mit dem Error
javascript.0 2020-06-04 16:24:14.604 error (15278) TypeError: request.defaults is not a function
javascript.0 2020-06-04 16:24:14.604 error (15278) ^
javascript.0 2020-06-04 16:24:14.604 error (15278) request = request.defaults({ rejectUnauthorized: false }); -
@AkiraFFM Hab gefunden woran es liegt und ein Issue erstellt.
https://github.com/ioBroker/ioBroker.javascript/issues/593Vorerst musst du wohl wieder auf eine alte Version zurück.
-
@AlCalzone ah gut zu wissen, bin auch erst über das Problem gestolpert.
@Jey-Cee @AkiraFFM ich hab einen potentiellen Fix. Könnt ihr den grad testen, habe leider keine Skripte, wo ich request verwende?
Dazu einfach über die Katze von custom URL installieren: https://github.com/ioBroker/ioBroker.javascript/tarball/request-missing-methods
-
Ja das hat es gefixt. Ist ein workaround aber in JS Adapter Version 4.6.17 war es noch nicht gefixt.
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden