Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. (gelöst) NPM-Modul "node-fetch" in der Javascript-Instanz

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    22
    1
    1.0k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.1k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.4k

(gelöst) NPM-Modul "node-fetch" in der Javascript-Instanz

Geplant Angeheftet Gesperrt Verschoben JavaScript
39 Beiträge 5 Kommentatoren 4.9k Aufrufe 4 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • AlCalzoneA AlCalzone

    Dann ist da im Adapter irgendwas faul...
    import wird unter der Haube in require umgeschrieben, sollte sich also gleich verhalten.

    @ice987 Probier mal als Workaround:

    cd /opt/iobroker/node_modules/iobroker.javascript
    npm install --production
    
    paul53P Offline
    paul53P Offline
    paul53
    schrieb am zuletzt editiert von
    #26

    @alcalzone sagte: Probier mal als Workaround:

    cd /opt/iobroker/node_modules/iobroker.javascript
    npm install --production
    

    Dorthin hat es der Javascript-Adapter installiert. Es wird dort aber nicht von require gefunden.

    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

    1 Antwort Letzte Antwort
    0
    • AlCalzoneA Offline
      AlCalzoneA Offline
      AlCalzone
      Developer
      schrieb am zuletzt editiert von
      #27

      Laut https://github.com/ioBroker/ioBroker.javascript/blob/1a05db402d3c5ad83623825734141a22c34e04b9/lib/sandbox.js#L410-L423 sollte zuerst

      /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-fetch
      

      und anschließend

      /opt/iobroker/node_modules/node-fetch
      

      versucht werden.
      In diesem Fall würde das bedeuten, dass node-fetch sich weder im Unterordner, noch in der übergeordneten Struktur befindet.

      @ice987
      Was kommt hier raus?

      cd /opt/iobroker
      find -iname node-fetch
      

      Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

      paul53P 1 Antwort Letzte Antwort
      0
      • AlCalzoneA AlCalzone

        Laut https://github.com/ioBroker/ioBroker.javascript/blob/1a05db402d3c5ad83623825734141a22c34e04b9/lib/sandbox.js#L410-L423 sollte zuerst

        /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-fetch
        

        und anschließend

        /opt/iobroker/node_modules/node-fetch
        

        versucht werden.
        In diesem Fall würde das bedeuten, dass node-fetch sich weder im Unterordner, noch in der übergeordneten Struktur befindet.

        @ice987
        Was kommt hier raus?

        cd /opt/iobroker
        find -iname node-fetch
        
        paul53P Offline
        paul53P Offline
        paul53
        schrieb am zuletzt editiert von
        #28

        @alcalzone

        const fetch = require('iobroker.javascript/node_modules/node-fetch');
        

        ergibt

        Error [ERR_REQUIRE_ESM] [ERR_REQUIRE_ESM]: Must use import to load ES Module: /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-fetch/src/index.js
        

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

        AlCalzoneA 1 Antwort Letzte Antwort
        0
        • paul53P paul53

          @alcalzone

          const fetch = require('iobroker.javascript/node_modules/node-fetch');
          

          ergibt

          Error [ERR_REQUIRE_ESM] [ERR_REQUIRE_ESM]: Must use import to load ES Module: /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-fetch/src/index.js
          
          AlCalzoneA Offline
          AlCalzoneA Offline
          AlCalzone
          Developer
          schrieb am zuletzt editiert von
          #29

          @paul53 Ahhhh, klick!

          d.h. in /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-fetch ist das Modul zu finden, aber in einer Version, die der Adapter nicht laden kann.
          Dann probiert er /opt/iobroker/node_modules/node-fetch, wo es nicht ist.

          Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

          1 Antwort Letzte Antwort
          0
          • AlCalzoneA Offline
            AlCalzoneA Offline
            AlCalzone
            Developer
            schrieb am zuletzt editiert von AlCalzone
            #30

            @ice987 Probier mal folgendes:

            1. Adapter stoppen, node-fetch aus der Adapter-Konfig entfernen.
            cd /opt/iobroker/node_modules/iobroker.javascript
            npm uninstall node-fetch
            
            1. In der Adapterkonfiguration node-fetch@2 eintragen und Adapter starten.

            Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

            ice987I 2 Antworten Letzte Antwort
            1
            • AlCalzoneA AlCalzone

              @ice987 Probier mal folgendes:

              1. Adapter stoppen, node-fetch aus der Adapter-Konfig entfernen.
              cd /opt/iobroker/node_modules/iobroker.javascript
              npm uninstall node-fetch
              
              1. In der Adapterkonfiguration node-fetch@2 eintragen und Adapter starten.
              ice987I Offline
              ice987I Offline
              ice987
              schrieb am zuletzt editiert von ice987
              #31

              @alcalzone sagte in (gelöst) NPM-Module in der Javascript instanz:

              @ice987 Probier mal folgendes:

              1. Adapter stoppen, node-fetch aus der Adapter-Konfig entfernen.
              cd /opt/iobroker/node_modules/iobroker.javascript
              npm uninstall node-fetch
              
              1. In der Adapterkonfiguration node-fetch@2 eintragen und Adapter starten.

              das funktioniert!

              cd /opt/iobroker/node_modules/iobroker.javascript
              npm install --production
              

              muss/soll/kann dies wieder Rückgängig gemacht werden?

              husqvarna-automower, meteoblue, wiserbyfeller, spritmonitor

              paul53P 1 Antwort Letzte Antwort
              0
              • ice987I ice987

                @alcalzone sagte in (gelöst) NPM-Module in der Javascript instanz:

                @ice987 Probier mal folgendes:

                1. Adapter stoppen, node-fetch aus der Adapter-Konfig entfernen.
                cd /opt/iobroker/node_modules/iobroker.javascript
                npm uninstall node-fetch
                
                1. In der Adapterkonfiguration node-fetch@2 eintragen und Adapter starten.

                das funktioniert!

                cd /opt/iobroker/node_modules/iobroker.javascript
                npm install --production
                

                muss/soll/kann dies wieder Rückgängig gemacht werden?

                paul53P Offline
                paul53P Offline
                paul53
                schrieb am zuletzt editiert von paul53
                #32

                @ice987 sagte: muss/soll/kann dies wieder Rückgängig gemacht werden?

                Nein, denn node-fetch wurde gerade durch

                In der Adapterkonfiguration node-fetch@2 eintragen und Adapter starten.

                dort neu installiert.

                const fetch = require('node-fetch');
                

                erzeugt keinen Fehler mehr.

                Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                1 Antwort Letzte Antwort
                0
                • AlCalzoneA AlCalzone

                  @ice987 Probier mal folgendes:

                  1. Adapter stoppen, node-fetch aus der Adapter-Konfig entfernen.
                  cd /opt/iobroker/node_modules/iobroker.javascript
                  npm uninstall node-fetch
                  
                  1. In der Adapterkonfiguration node-fetch@2 eintragen und Adapter starten.
                  ice987I Offline
                  ice987I Offline
                  ice987
                  schrieb am zuletzt editiert von
                  #33

                  @alcalzone sagte in (gelöst) NPM-Modul "node-fetch" in der Javascript-Instanz:

                  @ice987 Probier mal folgendes:

                  1. Adapter stoppen, node-fetch aus der Adapter-Konfig entfernen.
                  cd /opt/iobroker/node_modules/iobroker.javascript
                  npm uninstall node-fetch
                  
                  1. In der Adapterkonfiguration node-fetch@2 eintragen und Adapter starten.

                  Diese Prozedur funktioniert, bis ioBroker neu gestartet wird. Anschliessend kommt wieder der genannte Fehler

                  script.js.08_Wetterstation.082_Meteoblue: Error: Cannot find module '/opt/iobroker/node_modules/iobroker.javascript/lib/../../node-fetch'
                  

                  wird die Prozedur wieder durchgeführt, funktioniert es wieder ohne Fehler. Ggf. ist da was nicht i.O.

                  husqvarna-automower, meteoblue, wiserbyfeller, spritmonitor

                  AlCalzoneA paul53P 2 Antworten Letzte Antwort
                  0
                  • ice987I ice987

                    @alcalzone sagte in (gelöst) NPM-Modul "node-fetch" in der Javascript-Instanz:

                    @ice987 Probier mal folgendes:

                    1. Adapter stoppen, node-fetch aus der Adapter-Konfig entfernen.
                    cd /opt/iobroker/node_modules/iobroker.javascript
                    npm uninstall node-fetch
                    
                    1. In der Adapterkonfiguration node-fetch@2 eintragen und Adapter starten.

                    Diese Prozedur funktioniert, bis ioBroker neu gestartet wird. Anschliessend kommt wieder der genannte Fehler

                    script.js.08_Wetterstation.082_Meteoblue: Error: Cannot find module '/opt/iobroker/node_modules/iobroker.javascript/lib/../../node-fetch'
                    

                    wird die Prozedur wieder durchgeführt, funktioniert es wieder ohne Fehler. Ggf. ist da was nicht i.O.

                    AlCalzoneA Offline
                    AlCalzoneA Offline
                    AlCalzone
                    Developer
                    schrieb am zuletzt editiert von AlCalzone
                    #34

                    gelöscht

                    Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                    1 Antwort Letzte Antwort
                    0
                    • ice987I ice987

                      @alcalzone sagte in (gelöst) NPM-Modul "node-fetch" in der Javascript-Instanz:

                      @ice987 Probier mal folgendes:

                      1. Adapter stoppen, node-fetch aus der Adapter-Konfig entfernen.
                      cd /opt/iobroker/node_modules/iobroker.javascript
                      npm uninstall node-fetch
                      
                      1. In der Adapterkonfiguration node-fetch@2 eintragen und Adapter starten.

                      Diese Prozedur funktioniert, bis ioBroker neu gestartet wird. Anschliessend kommt wieder der genannte Fehler

                      script.js.08_Wetterstation.082_Meteoblue: Error: Cannot find module '/opt/iobroker/node_modules/iobroker.javascript/lib/../../node-fetch'
                      

                      wird die Prozedur wieder durchgeführt, funktioniert es wieder ohne Fehler. Ggf. ist da was nicht i.O.

                      paul53P Offline
                      paul53P Offline
                      paul53
                      schrieb am zuletzt editiert von paul53
                      #35

                      @ice987 sagte: funktioniert, bis ioBroker neu gestartet wird. Anschliessend kommt wieder der genannte Fehler

                      Bei mir kommt der Fehler nach Neustart nicht.

                      Bild_2021-09-16_124030.png

                      Die ersten 3 Zeilen der Datei /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-fetch/package.json:

                      {
                        "_from": "node-fetch@2",
                        "_id": "node-fetch@2.6.2",
                      

                      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                      ice987I 1 Antwort Letzte Antwort
                      0
                      • paul53P paul53

                        @ice987 sagte: funktioniert, bis ioBroker neu gestartet wird. Anschliessend kommt wieder der genannte Fehler

                        Bei mir kommt der Fehler nach Neustart nicht.

                        Bild_2021-09-16_124030.png

                        Die ersten 3 Zeilen der Datei /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-fetch/package.json:

                        {
                          "_from": "node-fetch@2",
                          "_id": "node-fetch@2.6.2",
                        
                        ice987I Offline
                        ice987I Offline
                        ice987
                        schrieb am zuletzt editiert von
                        #36

                        @paul53
                        sind bei mir identisch:

                        {
                          "_from": "node-fetch@2",
                          "_id": "node-fetch@2.6.2",
                        

                        husqvarna-automower, meteoblue, wiserbyfeller, spritmonitor

                        1 Antwort Letzte Antwort
                        0
                        • D Offline
                          D Offline
                          dukkha
                          schrieb am zuletzt editiert von dukkha
                          #37

                          iobroker-Neuling hier. Ich versuche, node-fetch in TypeScript zu verwenden. Ich habe es zu dem JavaScript-Adapter als Modul (node-fetch@2) ergänzt, bekomme beim Verwenden von import fetch from 'node-fetch'; aber dann folgenden Fehler:

                          Error [ERR_REQUIRE_ESM]: require() of ES Module /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-fetch/src/index.js from /opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js not supported

                          Jemand eine Idee?

                          Edit: Tatsächlich passiert das auch mit einer reinen JavaScript-Datei und const fetch = require('node-fetch');.
                          Edit 2: Ich habe nun einfach axios verwendet. Das funktioniert.

                          AlCalzoneA U 2 Antworten Letzte Antwort
                          0
                          • D dukkha

                            iobroker-Neuling hier. Ich versuche, node-fetch in TypeScript zu verwenden. Ich habe es zu dem JavaScript-Adapter als Modul (node-fetch@2) ergänzt, bekomme beim Verwenden von import fetch from 'node-fetch'; aber dann folgenden Fehler:

                            Error [ERR_REQUIRE_ESM]: require() of ES Module /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-fetch/src/index.js from /opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js not supported

                            Jemand eine Idee?

                            Edit: Tatsächlich passiert das auch mit einer reinen JavaScript-Datei und const fetch = require('node-fetch');.
                            Edit 2: Ich habe nun einfach axios verwendet. Das funktioniert.

                            AlCalzoneA Offline
                            AlCalzoneA Offline
                            AlCalzone
                            Developer
                            schrieb am zuletzt editiert von
                            #38

                            @dukkha sagte in (gelöst) NPM-Modul "node-fetch" in der Javascript-Instanz:

                            require() of ES Module ... from ... not supported

                            Die Version, die installiert ist, hat das ES Modules Format, welches von ioBroker nicht geladen werden kann. Installiere eine ältere Version, dann müsste es gehen.

                            Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                            1 Antwort Letzte Antwort
                            0
                            • D dukkha

                              iobroker-Neuling hier. Ich versuche, node-fetch in TypeScript zu verwenden. Ich habe es zu dem JavaScript-Adapter als Modul (node-fetch@2) ergänzt, bekomme beim Verwenden von import fetch from 'node-fetch'; aber dann folgenden Fehler:

                              Error [ERR_REQUIRE_ESM]: require() of ES Module /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-fetch/src/index.js from /opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js not supported

                              Jemand eine Idee?

                              Edit: Tatsächlich passiert das auch mit einer reinen JavaScript-Datei und const fetch = require('node-fetch');.
                              Edit 2: Ich habe nun einfach axios verwendet. Das funktioniert.

                              U Offline
                              U Offline
                              uwe72
                              schrieb am zuletzt editiert von
                              #39

                              @dukkha habe das gleiche Problem mit node-fetch.

                              Hast Du mir ein Code-Besipiel wie Du dann axios verwendest?

                              Möchte einen post http request durchführen und ein Image übergeben.

                              1 Antwort Letzte Antwort
                              0
                              Antworten
                              • In einem neuen Thema antworten
                              Anmelden zum Antworten
                              • Älteste zuerst
                              • Neuste zuerst
                              • Meiste Stimmen


                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              515

                              Online

                              32.5k

                              Benutzer

                              81.6k

                              Themen

                              1.3m

                              Beiträge
                              Community
                              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                              ioBroker Community 2014-2025
                              logo
                              • Anmelden

                              • Du hast noch kein Konto? Registrieren

                              • Anmelden oder registrieren, um zu suchen
                              • Erster Beitrag
                                Letzter Beitrag
                              0
                              • Home
                              • Aktuell
                              • Tags
                              • Ungelesen 0
                              • Kategorien
                              • Unreplied
                              • Beliebt
                              • GitHub
                              • Docu
                              • Hilfe