NEWS
[gelöst] Skript-Error bei request nach Update von NodeJS
-
Ich habe ein System, von welchem ich ein JSON mittels HTTP abfragen kann. Leider habe ich auf das System keinen Einfluss. Nach dem Update von NodeJS 16.15.1 auf 16.16.0 erhalte ich bei der Verarbeitung der Anfrage nun nur noch die Fehlermeldung:
Missing expected CR after header valueWie ich z.B. unter https://github.com/nodejs/node/issues/43798 lese, ist dies aus Sicherheitsgründen geändert worden.
Bisher habe ich den Aufruf über "request" in einem Javascript-Skript gelöst, sehe dort jedoch keine Möglichkeit die HTTP-Option "insecureHTTPParser" anzugeben. Meine Tests mittels Blockly führten zu dem gleichen Problem, da das gleiche Paket verwendet wird... Wie kann ich die bestehende URL nun aber mit einem aktuellen NodeJS korrekt aufrufen?Auch ist mir aufgefallen, dass das Paket request stark veraltet ist und eigentlich in iobroker ersetzt werden sollte - oder wie seht ihr das?
Ich freue mich auf eure Antworten!
PaulchenPlump -
Ich habe ein System, von welchem ich ein JSON mittels HTTP abfragen kann. Leider habe ich auf das System keinen Einfluss. Nach dem Update von NodeJS 16.15.1 auf 16.16.0 erhalte ich bei der Verarbeitung der Anfrage nun nur noch die Fehlermeldung:
Missing expected CR after header valueWie ich z.B. unter https://github.com/nodejs/node/issues/43798 lese, ist dies aus Sicherheitsgründen geändert worden.
Bisher habe ich den Aufruf über "request" in einem Javascript-Skript gelöst, sehe dort jedoch keine Möglichkeit die HTTP-Option "insecureHTTPParser" anzugeben. Meine Tests mittels Blockly führten zu dem gleichen Problem, da das gleiche Paket verwendet wird... Wie kann ich die bestehende URL nun aber mit einem aktuellen NodeJS korrekt aufrufen?Auch ist mir aufgefallen, dass das Paket request stark veraltet ist und eigentlich in iobroker ersetzt werden sollte - oder wie seht ihr das?
Ich freue mich auf eure Antworten!
PaulchenPlump@paulchenplump sagte in Skript-Error bei request nach Update von NodeJS:
eigentlich in iobroker ersetzt werden sollte - oder wie seht ihr das?
Die zur Zeit propagierte Alternative zu request ist axios. Wo möglich sollte darauf umgestellt werden. Die Verwendung ist aber noch weit verbreitet:
echad@chet:/opt/iobroker $ npm ls request iobroker.inst@3.0.0 /opt/iobroker ├─┬ iobroker.backitup@2.4.12 │ ├─┬ dropbox-v2-api@2.5.4 │ │ └── request@2.88.2 deduped │ └── request@2.88.2 ├─┬ iobroker.javascript@6.0.0 │ └── request@2.88.2 deduped ├─┬ iobroker.js-controller@4.0.23 │ ├─┬ @iobroker/js-controller-common@4.0.23 │ │ └── request@2.88.2 deduped │ ├─┬ le-acme-core@2.1.4 │ │ └── request@2.88.2 deduped │ └── request@2.88.2 deduped ├─┬ iobroker.mihome-vacuum@3.6.0 │ └── request@2.88.2 deduped ├─┬ iobroker.nina@0.0.25 │ └── request@2.88.2 deduped ├─┬ iobroker.nuki-extended@2.6.5 │ ├─┬ nuki-web-api@2.2.1 │ │ └── request@2.88.2 deduped │ ├─┬ request-promise@4.2.6 │ │ ├─┬ request-promise-core@1.1.4 │ │ │ └── request@2.88.2 deduped │ │ └── request@2.88.2 deduped │ └── request@2.88.2 deduped ├─┬ iobroker.pi-hole@1.3.4 │ └── request@2.88.2 deduped ├─┬ iobroker.samsung@0.5.11 (git+ssh://git@github.com/iobroker-community-adapters/ioBroker.samsung.git#70366ba038c0f5092731db63f09d16db8eb56e65) │ └─┬ samsungtv@0.0.0 (git+https://git@github.com/luca-saggese/samsungtv.git#7fc20107455414e2afb94022682e0787e8635550) │ └── request@2.88.2 deduped ├─┬ iobroker.tankerkoenig@2.1.1 │ └── request@2.88.2 deduped ├─┬ iobroker.tr-064@4.2.16 │ └─┬ tr-O64@0.2.4 │ └── request@2.88.2 deduped └─┬ iobroker.whatsapp-cmb@0.2.2 └── request@2.88.2 deduped -
@paulchenplump sagte in Skript-Error bei request nach Update von NodeJS:
eigentlich in iobroker ersetzt werden sollte - oder wie seht ihr das?
Die zur Zeit propagierte Alternative zu request ist axios. Wo möglich sollte darauf umgestellt werden. Die Verwendung ist aber noch weit verbreitet:
echad@chet:/opt/iobroker $ npm ls request iobroker.inst@3.0.0 /opt/iobroker ├─┬ iobroker.backitup@2.4.12 │ ├─┬ dropbox-v2-api@2.5.4 │ │ └── request@2.88.2 deduped │ └── request@2.88.2 ├─┬ iobroker.javascript@6.0.0 │ └── request@2.88.2 deduped ├─┬ iobroker.js-controller@4.0.23 │ ├─┬ @iobroker/js-controller-common@4.0.23 │ │ └── request@2.88.2 deduped │ ├─┬ le-acme-core@2.1.4 │ │ └── request@2.88.2 deduped │ └── request@2.88.2 deduped ├─┬ iobroker.mihome-vacuum@3.6.0 │ └── request@2.88.2 deduped ├─┬ iobroker.nina@0.0.25 │ └── request@2.88.2 deduped ├─┬ iobroker.nuki-extended@2.6.5 │ ├─┬ nuki-web-api@2.2.1 │ │ └── request@2.88.2 deduped │ ├─┬ request-promise@4.2.6 │ │ ├─┬ request-promise-core@1.1.4 │ │ │ └── request@2.88.2 deduped │ │ └── request@2.88.2 deduped │ └── request@2.88.2 deduped ├─┬ iobroker.pi-hole@1.3.4 │ └── request@2.88.2 deduped ├─┬ iobroker.samsung@0.5.11 (git+ssh://git@github.com/iobroker-community-adapters/ioBroker.samsung.git#70366ba038c0f5092731db63f09d16db8eb56e65) │ └─┬ samsungtv@0.0.0 (git+https://git@github.com/luca-saggese/samsungtv.git#7fc20107455414e2afb94022682e0787e8635550) │ └── request@2.88.2 deduped ├─┬ iobroker.tankerkoenig@2.1.1 │ └── request@2.88.2 deduped ├─┬ iobroker.tr-064@4.2.16 │ └─┬ tr-O64@0.2.4 │ └── request@2.88.2 deduped └─┬ iobroker.whatsapp-cmb@0.2.2 └── request@2.88.2 dedupedOK, da habe ich mal wieder nicht mitbekommen, dass das schon länger Thema war... Vielen Dank erst einmal - ich werde mich an axios probieren!
PS: Ist axios der "inoffizielle" Nachfolger und werden die Blockly-Skripte irgendwann automatisch umgestellt? -
@paulchenplump
Automatisch geht da nix, die Skripte müssen von Hand umgestellt werden.
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