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

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    364

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.6k

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

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

Geplant Angeheftet Gesperrt Verschoben JavaScript
39 Beiträge 5 Kommentatoren 5.0k 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

    @ice987 Das sieht besser aus. Wenn du solche Probleme künftig vermeiden willst, am besten noch all die anderen Pakete deinstallieren, die unnötigerweise in /opt/iobroker/package.json stehen. Da sollten ausschließlich dependencies drin sein, die mit iobroker. oder @iobroker/ beginnen.

    Vorsichtshalber mal ein Backup vorher fahren :)

    ice987I Offline
    ice987I Offline
    ice987
    schrieb am zuletzt editiert von
    #16

    @alcalzone
    wunderbar!

    hab' gerade gekuckt in /opt/iobroker/package.json: alles fängt mit iobroker. oder @iobroker/ an ausser:

    "colors": "^1.3.3",
    "fs-extra": "^7.0.1"
    "iobroker": "^2.0.3",
    "semver": "^5.6.0",
    "yargs": "^7.0.2"
    

    alles stehen lassen?

    husqvarna-automower, meteoblue, wiserbyfeller, spritmonitor

    AlCalzoneA 1 Antwort Letzte Antwort
    0
    • ice987I ice987

      @alcalzone
      wunderbar!

      hab' gerade gekuckt in /opt/iobroker/package.json: alles fängt mit iobroker. oder @iobroker/ an ausser:

      "colors": "^1.3.3",
      "fs-extra": "^7.0.1"
      "iobroker": "^2.0.3",
      "semver": "^5.6.0",
      "yargs": "^7.0.2"
      

      alles stehen lassen?

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

      @ice987 iobroker drin lassen. Der Rest dürfte raus können.

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

      ice987I 1 Antwort Letzte Antwort
      0
      • AlCalzoneA AlCalzone

        @ice987 iobroker drin lassen. Der Rest dürfte raus können.

        ice987I Offline
        ice987I Offline
        ice987
        schrieb am zuletzt editiert von ice987
        #18

        @alcalzone
        ok, hab alles gelistete entfernt (ausser iobroker). Nun habe ich aber erneut das Problem mit dem Error:

        Module sind wie folgt eingetragen:
        c91a6e3b-8f85-42ea-9b8c-2bcc00fca5a2-image.png

        error wie folgt:

        14:52:47.875	error	javascript.2 (185) script.js.08_Wetterstation.082_Meteoblue: Error: Cannot find module '/opt/iobroker/node_modules/iobroker.javascript/lib/../../node-fetch'
        
        root@iobroker-v510:/opt/iobroker# npm ls node-fetch
        iobroker.inst@2.0.3 /opt/iobroker
        └─┬ iobroker.javascript@5.2.8
          └── node-fetch@3.0.0
        

        husqvarna-automower, meteoblue, wiserbyfeller, spritmonitor

        AlCalzoneA paul53P 2 Antworten Letzte Antwort
        0
        • ice987I ice987

          @alcalzone
          ok, hab alles gelistete entfernt (ausser iobroker). Nun habe ich aber erneut das Problem mit dem Error:

          Module sind wie folgt eingetragen:
          c91a6e3b-8f85-42ea-9b8c-2bcc00fca5a2-image.png

          error wie folgt:

          14:52:47.875	error	javascript.2 (185) script.js.08_Wetterstation.082_Meteoblue: Error: Cannot find module '/opt/iobroker/node_modules/iobroker.javascript/lib/../../node-fetch'
          
          root@iobroker-v510:/opt/iobroker# npm ls node-fetch
          iobroker.inst@2.0.3 /opt/iobroker
          └─┬ iobroker.javascript@5.2.8
            └── node-fetch@3.0.0
          
          AlCalzoneA Offline
          AlCalzoneA Offline
          AlCalzone
          Developer
          schrieb am zuletzt editiert von
          #19

          @ice987 entferne es mal, starte den Adapter neu, dann füge es wieder hinzu.

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

          ice987I 1 Antwort Letzte Antwort
          0
          • AlCalzoneA AlCalzone

            @ice987 entferne es mal, starte den Adapter neu, dann füge es wieder hinzu.

            ice987I Offline
            ice987I Offline
            ice987
            schrieb am zuletzt editiert von ice987
            #20

            @alcalzone
            ich habe alles hier
            31b0f607-d79f-4326-b9dd-dbb2c8fc8cd9-image.png
            entfernt, Instanz neu gestartet, der error bleibt. node-fetch wieder hinzugefügt, Instanz heu gestartet, Fehler bleibt.

            husqvarna-automower, meteoblue, wiserbyfeller, spritmonitor

            1 Antwort Letzte Antwort
            0
            • ice987I ice987

              @alcalzone
              ok, hab alles gelistete entfernt (ausser iobroker). Nun habe ich aber erneut das Problem mit dem Error:

              Module sind wie folgt eingetragen:
              c91a6e3b-8f85-42ea-9b8c-2bcc00fca5a2-image.png

              error wie folgt:

              14:52:47.875	error	javascript.2 (185) script.js.08_Wetterstation.082_Meteoblue: Error: Cannot find module '/opt/iobroker/node_modules/iobroker.javascript/lib/../../node-fetch'
              
              root@iobroker-v510:/opt/iobroker# npm ls node-fetch
              iobroker.inst@2.0.3 /opt/iobroker
              └─┬ iobroker.javascript@5.2.8
                └── node-fetch@3.0.0
              
              paul53P Offline
              paul53P Offline
              paul53
              schrieb am zuletzt editiert von
              #21

              @ice987 sagte: error wie folgt:

              Wie ist es in das Skript eingebunden?

              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: error wie folgt:

                Wie ist es in das Skript eingebunden?

                ice987I Offline
                ice987I Offline
                ice987
                schrieb am zuletzt editiert von ice987
                #22

                @paul53

                aktuell (zu Testzwecken) nur so:

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

                welches bereits den Fehler ergibt:

                husqvarna-automower, meteoblue, wiserbyfeller, spritmonitor

                paul53P 1 Antwort Letzte Antwort
                0
                • ice987I ice987

                  @paul53

                  aktuell (zu Testzwecken) nur so:

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

                  welches bereits den Fehler ergibt:

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

                  @ice987
                  require erwartet es im Verzeichnis /opt/iobroker/node_modules, wo es offenbar nicht (mehr) installiert ist.

                  Error: Cannot find module '/opt/iobroker/node_modules/iobroker.javascript/lib/../../node-fetch'
                  

                  import reagiert anders.

                  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 AlCalzone
                    #24

                    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
                    

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

                    paul53P 1 Antwort Letzte Antwort
                    0
                    • ice987I Offline
                      ice987I Offline
                      ice987
                      schrieb am zuletzt editiert von ice987
                      #25

                      @paul53
                      so hätte ich die Fehlermeldung auch interpretiert. Da hab' ich's manuell probiert, was funktionierte, jedoch nicht der "korrekten Installation" entspricht...

                      @AlCalzone

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

                      habe ich ausgeführt: fehler bleibt:

                      Script nur eine Zeile:

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

                      fehler:

                      15:20:40.276	error	javascript.2 (1358) script.js.08_Wetterstation.Skript_1: Error: Cannot find module '/opt/iobroker/node_modules/iobroker.javascript/lib/../../node-fetch'
                      

                      wenns was zur Sache tut: ioBroker läuft auf einem QNAP im Container, unter dem offiziellen Dockerimage von Buanet.

                      husqvarna-automower, meteoblue, wiserbyfeller, spritmonitor

                      1 Antwort Letzte Antwort
                      0
                      • 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
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          788

                                          Online

                                          32.5k

                                          Benutzer

                                          81.8k

                                          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