Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
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.1k

  • 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

Scheduled Pinned Locked Moved JavaScript
39 Posts 5 Posters 4.9k Views 4 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • paul53P paul53

    @ice987
    Gerade bei mir getestet:
    node-fetch wurde unter /opt/iobroker/node_modules/iobroker.javascript/node_modules installiert, require will aber unter /opt/iobroker/node_modules darauf zugreifen, wo es nicht installiert ist.

    ice987I Offline
    ice987I Offline
    ice987
    wrote on last edited by
    #10

    @paul53 sagte in NPM-Module in der Javascript instanz:

    Ich meinte: Aus der Konfiguration löschen, speichern und wieder eintragen - also noch mal die Installation versuchen.

    nun funktioniert es!

    Vielen Dank!

    husqvarna-automower, meteoblue, wiserbyfeller, spritmonitor

    1 Reply Last reply
    0
    • ice987I ice987

      @paul53

      hab' ich:

      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  deduped
      └── node-fetch@3.0.0
      

      mit v3.x gibt's einige Änderungen: https://github.com/node-fetch/node-fetch/blob/HEAD/docs/v3-UPGRADE-GUIDE.md.
      require funktioniert offenbar nicht mehr.

      AlCalzoneA Offline
      AlCalzoneA Offline
      AlCalzone
      Developer
      wrote on last edited by
      #11

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

      iobroker.inst@2.0.3 /opt/iobroker
      ├─┬ iobroker.javascript@5.2.8
      │ └── node-fetch@3.0.0  deduped
      └── node-fetch@3.0.0
      

      Hast du zufällig node-fetch mal innerhalb /opt/iobrokerhändisch nachinstalliert?
      Das sieht aus, als würde es auch in /opt/iobroker/package.json stehen, wo es definitiv nicht hingehört.

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

      ice987I 1 Reply Last reply
      0
      • AlCalzoneA AlCalzone

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

        iobroker.inst@2.0.3 /opt/iobroker
        ├─┬ iobroker.javascript@5.2.8
        │ └── node-fetch@3.0.0  deduped
        └── node-fetch@3.0.0
        

        Hast du zufällig node-fetch mal innerhalb /opt/iobrokerhändisch nachinstalliert?
        Das sieht aus, als würde es auch in /opt/iobroker/package.json stehen, wo es definitiv nicht hingehört.

        ice987I Offline
        ice987I Offline
        ice987
        wrote on last edited by ice987
        #12

        @alcalzone
        leider ist das so, ja.

        husqvarna-automower, meteoblue, wiserbyfeller, spritmonitor

        AlCalzoneA 1 Reply Last reply
        0
        • ice987I ice987

          @alcalzone
          leider ist das so, ja.

          AlCalzoneA Offline
          AlCalzoneA Offline
          AlCalzone
          Developer
          wrote on last edited by
          #13

          @ice987 Dann am besten mal entfernen, das dürfte nämlich die Ursache für solche Probleme sein.

          cd /opt/iobroker
          npm uninstall node-fetch
          

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

          ice987I 1 Reply Last reply
          0
          • AlCalzoneA AlCalzone

            @ice987 Dann am besten mal entfernen, das dürfte nämlich die Ursache für solche Probleme sein.

            cd /opt/iobroker
            npm uninstall node-fetch
            
            ice987I Offline
            ice987I Offline
            ice987
            wrote on last edited by ice987
            #14

            @alcalzone

            root@iobroker-v510:/opt/iobroker# cd /opt/iobroker
            root@iobroker-v510:/opt/iobroker# npm uninstall node-fetch
            npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@2.3.2 (node_modules/fsevents):
            npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.3.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
            
            removed 19 packages and audited 1289 packages in 35.686s
            
            102 packages are looking for funding
              run `npm fund` for details
            
            found 64 vulnerabilities (5 low, 21 moderate, 35 high, 3 critical)
              run `npm audit fix` to fix them, or `npm audit` for details
            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
            

            die "Zusätzlichen NPM-Module" im Javascript-Adapter wurden vorher entfernt und sind aktuell nicht drin. Ist die Installation so nun in Ordnung?

            Das Skript scheint zu funktionieren...

            husqvarna-automower, meteoblue, wiserbyfeller, spritmonitor

            AlCalzoneA 1 Reply Last reply
            0
            • ice987I ice987

              @alcalzone

              root@iobroker-v510:/opt/iobroker# cd /opt/iobroker
              root@iobroker-v510:/opt/iobroker# npm uninstall node-fetch
              npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@2.3.2 (node_modules/fsevents):
              npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.3.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
              
              removed 19 packages and audited 1289 packages in 35.686s
              
              102 packages are looking for funding
                run `npm fund` for details
              
              found 64 vulnerabilities (5 low, 21 moderate, 35 high, 3 critical)
                run `npm audit fix` to fix them, or `npm audit` for details
              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
              

              die "Zusätzlichen NPM-Module" im Javascript-Adapter wurden vorher entfernt und sind aktuell nicht drin. Ist die Installation so nun in Ordnung?

              Das Skript scheint zu funktionieren...

              AlCalzoneA Offline
              AlCalzoneA Offline
              AlCalzone
              Developer
              wrote on last edited by
              #15

              @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 :)

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

              ice987I 1 Reply Last reply
              0
              • 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
                wrote on last edited by
                #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 Reply Last reply
                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
                  wrote on last edited by
                  #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 Reply Last reply
                  0
                  • AlCalzoneA AlCalzone

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

                    ice987I Offline
                    ice987I Offline
                    ice987
                    wrote on last edited by 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 Replies Last reply
                    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
                      wrote on last edited by
                      #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 Reply Last reply
                      0
                      • AlCalzoneA AlCalzone

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

                        ice987I Offline
                        ice987I Offline
                        ice987
                        wrote on last edited by 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 Reply Last reply
                        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
                          wrote on last edited by
                          #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 Reply Last reply
                          0
                          • paul53P paul53

                            @ice987 sagte: error wie folgt:

                            Wie ist es in das Skript eingebunden?

                            ice987I Offline
                            ice987I Offline
                            ice987
                            wrote on last edited by 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 Reply Last reply
                            0
                            • ice987I ice987

                              @paul53

                              aktuell (zu Testzwecken) nur so:

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

                              welches bereits den Fehler ergibt:

                              paul53P Offline
                              paul53P Offline
                              paul53
                              wrote on last edited by 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 Reply Last reply
                              0
                              • AlCalzoneA Offline
                                AlCalzoneA Offline
                                AlCalzone
                                Developer
                                wrote on last edited by 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 Reply Last reply
                                0
                                • ice987I Offline
                                  ice987I Offline
                                  ice987
                                  wrote on last edited by 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 Reply Last reply
                                  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
                                    wrote on last edited by
                                    #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 Reply Last reply
                                    0
                                    • AlCalzoneA Offline
                                      AlCalzoneA Offline
                                      AlCalzone
                                      Developer
                                      wrote on last edited by
                                      #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 Reply Last reply
                                      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
                                        wrote on last edited by
                                        #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 Reply Last reply
                                        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
                                          wrote on last edited by
                                          #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 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          889

                                          Online

                                          32.5k

                                          Users

                                          81.6k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe