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. Blockly
  5. http (GET) Aufruf mit username:password@ funktioniert nicht

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    14
    1
    427

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    613

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    1.8k

http (GET) Aufruf mit username:password@ funktioniert nicht

Geplant Angeheftet Gesperrt Verschoben Blockly
17 Beiträge 5 Kommentatoren 1.2k Aufrufe 7 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.
  • A arumpel

    Hallo

    ich bekomme folgenden Scriptteil einfach nicht zum laufen.
    Das Script wird ausgeführt, zumindest wird die debug Message ausgegeben, danach passiert aber nichts weiter.

    3c7694d9-805a-4629-a16b-67de17146673-image.png

    Wenn ich die Adresszeile in den Browser eingebe dauert es zwar 10-20s aber dann sagt das Gerät message received auf der Browserseite und es hat funktioniert.

    Die ganze Adresszeile die aufgerufen werden soll sieht ungefähr so aus:
    http://username:passwort@dynamischedns.my.to:1234/set?soc=2

    Liegt das Ganze daran dass der Get Befehl insgesamt nicht wirklich funktioniert oder am Adapter der das mit Username und Passwort so irgendwie nicht rüberbringt?

    CodierknechtC Online
    CodierknechtC Online
    Codierknecht
    Developer Most Active
    schrieb am zuletzt editiert von
    #4

    @arumpel sagte in http (GET) Aufruf mit username:password@ funktioniert nicht:

    Liegt das Ganze daran dass der Get Befehl insgesamt nicht wirklich funktioniert oder am Adapter der das mit Username und Passwort so irgendwie nicht rüberbringt?

    Der Get-Befehl wird schon funktionieren, aber evtl. nicht vollumfänglich mit Blockly. Je nach Art der zulässigen Authentifizierung (Basic, Bearer etc.) der Gegenseite müsste das evtl. in eine JS-Funktion ausgelagert werden.
    Bei der Übergabe per URL müssen Sonderzeichen im Kennwort übrigens URL-kodiert werden. Das macht der Browser automatisch, der Get-Befehl in Blockly vermutlich nicht.

    Näheres dazu kann vielleicht Matthias @haus-automatisierung sagen.

    "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

    Proxmox 9.1.1 LXC|8 GB|Core i7-6700
    HmIP|ZigBee|Tasmota|Unifi
    Zabbix Certified Specialist
    Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

    haus-automatisierungH 1 Antwort Letzte Antwort
    0
    • CodierknechtC Codierknecht

      @arumpel sagte in http (GET) Aufruf mit username:password@ funktioniert nicht:

      Liegt das Ganze daran dass der Get Befehl insgesamt nicht wirklich funktioniert oder am Adapter der das mit Username und Passwort so irgendwie nicht rüberbringt?

      Der Get-Befehl wird schon funktionieren, aber evtl. nicht vollumfänglich mit Blockly. Je nach Art der zulässigen Authentifizierung (Basic, Bearer etc.) der Gegenseite müsste das evtl. in eine JS-Funktion ausgelagert werden.
      Bei der Übergabe per URL müssen Sonderzeichen im Kennwort übrigens URL-kodiert werden. Das macht der Browser automatisch, der Get-Befehl in Blockly vermutlich nicht.

      Näheres dazu kann vielleicht Matthias @haus-automatisierung sagen.

      haus-automatisierungH Online
      haus-automatisierungH Online
      haus-automatisierung
      Developer Most Active
      schrieb am zuletzt editiert von
      #5

      @codierknecht Wenn es so im Browser geht, ist es ja einfach nur Basic-Authentication. Das klappt so auch mit Blockly.

      Mal den Verbose-Mode im Script aktivieren. Dann sieht man mehr was genau gesendet wird und ob etwas zurückkommt.

      🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
      🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
      📚 Meine inoffizielle ioBroker Dokumentation

      HomoranH CodierknechtC 2 Antworten Letzte Antwort
      0
      • haus-automatisierungH haus-automatisierung

        @codierknecht Wenn es so im Browser geht, ist es ja einfach nur Basic-Authentication. Das klappt so auch mit Blockly.

        Mal den Verbose-Mode im Script aktivieren. Dann sieht man mehr was genau gesendet wird und ob etwas zurückkommt.

        HomoranH Nicht stören
        HomoranH Nicht stören
        Homoran
        Global Moderator Administrators
        schrieb am zuletzt editiert von
        #6

        @haus-automatisierung könnte/wäre/würde so ein Gerät vielleicht eventuell möglicherweise den User Agent prüfen?

        kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

        haus-automatisierungH 1 Antwort Letzte Antwort
        0
        • HomoranH Homoran

          @haus-automatisierung könnte/wäre/würde so ein Gerät vielleicht eventuell möglicherweise den User Agent prüfen?

          haus-automatisierungH Online
          haus-automatisierungH Online
          haus-automatisierung
          Developer Most Active
          schrieb am zuletzt editiert von haus-automatisierung
          #7

          @homoran Der User-Agent ist ja nur ein separater HTTP-Header und muss nichtmal übermittelt werden. Eine API würde den Agent-Header (hoffentlich) nie prüfen oder validieren.

          Dennoch übermittelt der JavaScript-Adapter bei httpGet einen Agent, weil manche damit ja auch Webseiten parsen usw. Siehe

          https://github.com/ioBroker/ioBroker.javascript/blob/7778007eb9304658aed10f4a975de91864ad26bc/lib/tools.js#L169

          🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
          🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
          📚 Meine inoffizielle ioBroker Dokumentation

          CodierknechtC 1 Antwort Letzte Antwort
          1
          • haus-automatisierungH haus-automatisierung

            @codierknecht Wenn es so im Browser geht, ist es ja einfach nur Basic-Authentication. Das klappt so auch mit Blockly.

            Mal den Verbose-Mode im Script aktivieren. Dann sieht man mehr was genau gesendet wird und ob etwas zurückkommt.

            CodierknechtC Online
            CodierknechtC Online
            Codierknecht
            Developer Most Active
            schrieb am zuletzt editiert von
            #8

            @haus-automatisierung sagte in http (GET) Aufruf mit username:password@ funktioniert nicht:

            Wenn es so im Browser geht, ist es ja einfach nur Basic-Authentication. Das klappt so auch mit Blockly.

            Es könnten aber vielleicht bestimmte Sonderzeichen Ärger machen. Wird der Kram von httpGet auch URL-codiert?

            "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

            Proxmox 9.1.1 LXC|8 GB|Core i7-6700
            HmIP|ZigBee|Tasmota|Unifi
            Zabbix Certified Specialist
            Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

            haus-automatisierungH 1 Antwort Letzte Antwort
            0
            • A arumpel

              @codierknecht
              Da kommt 401 zurück was unauthorized heißt.
              Wenn ich die URL aber mit copy und paste in den Brower kopiere und aufrufe klappt es.
              Muss ich da irgendwas bei der Javascript Instanz noch einstellen oder installieren oder wo klemmts?

              HomoranH Nicht stören
              HomoranH Nicht stören
              Homoran
              Global Moderator Administrators
              schrieb am zuletzt editiert von
              #9

              @arumpel sagte in http (GET) Aufruf mit username:password@ funktioniert nicht:

              Wenn ich die URL aber mit copy und paste in den Brower kopiere und aufrufe klappt es.

              hast du dich in dem Browser schon mal manuell authentifiziert?

              oder andersherum:
              klappt das auch im Inkognito-Tab?

              kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

              A 1 Antwort Letzte Antwort
              1
              • haus-automatisierungH haus-automatisierung

                @homoran Der User-Agent ist ja nur ein separater HTTP-Header und muss nichtmal übermittelt werden. Eine API würde den Agent-Header (hoffentlich) nie prüfen oder validieren.

                Dennoch übermittelt der JavaScript-Adapter bei httpGet einen Agent, weil manche damit ja auch Webseiten parsen usw. Siehe

                https://github.com/ioBroker/ioBroker.javascript/blob/7778007eb9304658aed10f4a975de91864ad26bc/lib/tools.js#L169

                CodierknechtC Online
                CodierknechtC Online
                Codierknecht
                Developer Most Active
                schrieb am zuletzt editiert von
                #10

                @haus-automatisierung sagte in http (GET) Aufruf mit username:password@ funktioniert nicht:

                Eine API würde den Agent-Header (hoffentlich) nie prüfen oder validieren.

                Hatte ich auch schon. Musste dem Request dann einen unverfänglichen Agenten "unterjubeln" ;-)

                "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                HmIP|ZigBee|Tasmota|Unifi
                Zabbix Certified Specialist
                Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                1 Antwort Letzte Antwort
                0
                • CodierknechtC Codierknecht

                  @haus-automatisierung sagte in http (GET) Aufruf mit username:password@ funktioniert nicht:

                  Wenn es so im Browser geht, ist es ja einfach nur Basic-Authentication. Das klappt so auch mit Blockly.

                  Es könnten aber vielleicht bestimmte Sonderzeichen Ärger machen. Wird der Kram von httpGet auch URL-codiert?

                  haus-automatisierungH Online
                  haus-automatisierungH Online
                  haus-automatisierung
                  Developer Most Active
                  schrieb am zuletzt editiert von
                  #11

                  @codierknecht sagte in http (GET) Aufruf mit username:password@ funktioniert nicht:

                  Es könnten aber vielleicht bestimmte Sonderzeichen Ärger machen.

                  Alles Mutmaßungen und bringt ja niemanden weiter. URL Escaping muss man natürlich selbst machen.
                  Aber all das würde man im Log des Verbose-Mode ja sehen...

                  🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                  🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                  📚 Meine inoffizielle ioBroker Dokumentation

                  A 1 Antwort Letzte Antwort
                  0
                  • haus-automatisierungH haus-automatisierung

                    @codierknecht sagte in http (GET) Aufruf mit username:password@ funktioniert nicht:

                    Es könnten aber vielleicht bestimmte Sonderzeichen Ärger machen.

                    Alles Mutmaßungen und bringt ja niemanden weiter. URL Escaping muss man natürlich selbst machen.
                    Aber all das würde man im Log des Verbose-Mode ja sehen...

                    A Offline
                    A Offline
                    arumpel
                    schrieb am zuletzt editiert von
                    #12

                    @haus-automatisierung
                    Danke für die rege Beteiligung. Ich hoffe ich habe das richtige Log was Ihr sehen wollt. Geändert habe ich darin nur die dynamische DNS Adresse und username sowie passwort. Das sind aber alles nur normale Kleinbuchstaben im Original.

                    javascript.0 09:35:24.768 info script.js.BMS: Ändere BMS SOC
                    javascript.0 09:35:24.769 info script.js.BMS: httpGet(config={"method":"get","url":"http://dynamischedns.my.to:4718/set?soc=2","responseType":"text","responseEncoding":"utf8","timeout":60000,"auth":{"username":"username","password":"passwort"},"headers":{"User-Agent":"Mozilla/5.0 (X11; Linux i686; rv:109.0) Gecko/20100101 Firefox/121.0"}})
                    javascript.0 09:35:24.778 info script.js.BMS: getState(id=mqtt.0.BMS.Pack_Cell_Low_Voltage, timerId=undefined) => {"val":3.169,"ack":true,"ts":1745307321735,"q":0,"from":"system.adapter.mqtt.0","user":"system.user.admin","lc":1745307305763}
                    javascript.0 09:35:24.778 info script.js.BMS: sendTo(instance=telegram.0, cmd=send, msg={"text":"Akkustand kritisch! Geringste Zellenspannung: 3.169V"}, hasCallback=false)
                    javascript.0 09:35:25.979 info script.js.BMS: httpGet(url=http://username:passwort@dynamischedns.my.to:4718/set?soc=2, responseTime=1210ms)
                    javascript.0 09:35:25.980 info script.js.BMS: 401

                    1 Antwort Letzte Antwort
                    0
                    • HomoranH Homoran

                      @arumpel sagte in http (GET) Aufruf mit username:password@ funktioniert nicht:

                      Wenn ich die URL aber mit copy und paste in den Brower kopiere und aufrufe klappt es.

                      hast du dich in dem Browser schon mal manuell authentifiziert?

                      oder andersherum:
                      klappt das auch im Inkognito-Tab?

                      A Offline
                      A Offline
                      arumpel
                      schrieb am zuletzt editiert von arumpel
                      #13

                      @homoran
                      Also im Chrome Inkognito Tab wenn ich die URL reinkopiere sagt er:

                      dynamischedns.my.to unterstützt keine sichere Verbindung
                      Du siehst diese Warnung, weil diese Website kein HTTPS unterstützt und du den Inkognitomodus nutzt. Weitere Informationen zu dieser Warnung...

                      Die URL die ich gepasted habe war aber nur http://... also ohne das s

                      Wenn ich es im Firefox Broswer im privaten Fenster mache klappt es.
                      Dann kommt ein message received vom Device zurück und der SOC wurde per Webhook geändert.

                      HomoranH 1 Antwort Letzte Antwort
                      0
                      • A arumpel

                        @homoran
                        Also im Chrome Inkognito Tab wenn ich die URL reinkopiere sagt er:

                        dynamischedns.my.to unterstützt keine sichere Verbindung
                        Du siehst diese Warnung, weil diese Website kein HTTPS unterstützt und du den Inkognitomodus nutzt. Weitere Informationen zu dieser Warnung...

                        Die URL die ich gepasted habe war aber nur http://... also ohne das s

                        Wenn ich es im Firefox Broswer im privaten Fenster mache klappt es.
                        Dann kommt ein message received vom Device zurück und der SOC wurde per Webhook geändert.

                        HomoranH Nicht stören
                        HomoranH Nicht stören
                        Homoran
                        Global Moderator Administrators
                        schrieb am zuletzt editiert von
                        #14

                        @arumpel sagte in http (GET) Aufruf mit username:password@ funktioniert nicht:

                        Die URL die ich gepasted habe war aber nur http://... also ohne das s

                        war das auch hinterher noch so?
                        die Browser ändern das je nach Einstellungen eigenständig ab.

                        kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                        A 1 Antwort Letzte Antwort
                        0
                        • HomoranH Homoran

                          @arumpel sagte in http (GET) Aufruf mit username:password@ funktioniert nicht:

                          Die URL die ich gepasted habe war aber nur http://... also ohne das s

                          war das auch hinterher noch so?
                          die Browser ändern das je nach Einstellungen eigenständig ab.

                          A Offline
                          A Offline
                          arumpel
                          schrieb am zuletzt editiert von
                          #15

                          @homoran

                          Im Chrome habe ich es mehrfach probiert. Wenn ich paste mache und da http://... drin steht kommt die Fehlermeldung das kein HTTPS unterstützt wird. In der Adresszeile fehlt aber der Zusatz http:// oder auch https:// komplett, nur der Rest der Adresse steht noch drin.

                          Trotzdem funktioniert es wenn ich es im Firefox im privaten Fenster eingebe. Das Device gibt dann eine Rückmeldung und der Webhook hat funktioniert.

                          Nur eben in Blockly mit Get Auffruf funktioniert das nicht. Ich kann so halt nichts automatisieren.

                          P 1 Antwort Letzte Antwort
                          0
                          • A arumpel

                            @homoran

                            Im Chrome habe ich es mehrfach probiert. Wenn ich paste mache und da http://... drin steht kommt die Fehlermeldung das kein HTTPS unterstützt wird. In der Adresszeile fehlt aber der Zusatz http:// oder auch https:// komplett, nur der Rest der Adresse steht noch drin.

                            Trotzdem funktioniert es wenn ich es im Firefox im privaten Fenster eingebe. Das Device gibt dann eine Rückmeldung und der Webhook hat funktioniert.

                            Nur eben in Blockly mit Get Auffruf funktioniert das nicht. Ich kann so halt nichts automatisieren.

                            P Offline
                            P Offline
                            peterfido
                            schrieb am zuletzt editiert von
                            #16

                            @arumpel Was ist das für ein Server, welcher unverschlüsselt im Internet hängt? Da kann ja jeder dazwischenliegende Hop mitlesen.

                            Ist es Dein eigener, dann schalte die Verschlüsselung ein.

                            Es gibt noch den Parameter validateCertificate

                            httpGet( URL, { validateCertificate: false, timeout: 2000, responseType: 'arraybuffer' }, async (err, response) => {
                            ...
                            ...
                            ...
                            

                            wie das in Blockly aussieht, weiß ich allerdings nicht. Auch nicht, ob Dir das weiterhilft.

                            In Chrome zeigt er schon das Protokoll an. Dafür muss man in die Adresszeile reinklicken. Die Screenshots sind zwar vom Vivaldi, gilt aber auch für Chrome:

                            8f85c6a1-5497-42c4-a3eb-6c6c2ed7bd5b-image.png

                            f48afba3-482e-4973-a16d-a2c073db2b84-image.png

                            Gruß

                            Peterfido


                            Proxmox auf Intel NUC12WSHi5
                            ioBroker: Debian (VM)
                            CCU: Debmatic (VM)
                            Influx: Debian (VM)
                            Grafana: Debian (VM)
                            eBus: Debian (VM)
                            Zigbee: Debian (VM) mit zigbee2mqtt

                            A 1 Antwort Letzte Antwort
                            0
                            • P peterfido

                              @arumpel Was ist das für ein Server, welcher unverschlüsselt im Internet hängt? Da kann ja jeder dazwischenliegende Hop mitlesen.

                              Ist es Dein eigener, dann schalte die Verschlüsselung ein.

                              Es gibt noch den Parameter validateCertificate

                              httpGet( URL, { validateCertificate: false, timeout: 2000, responseType: 'arraybuffer' }, async (err, response) => {
                              ...
                              ...
                              ...
                              

                              wie das in Blockly aussieht, weiß ich allerdings nicht. Auch nicht, ob Dir das weiterhilft.

                              In Chrome zeigt er schon das Protokoll an. Dafür muss man in die Adresszeile reinklicken. Die Screenshots sind zwar vom Vivaldi, gilt aber auch für Chrome:

                              8f85c6a1-5497-42c4-a3eb-6c6c2ed7bd5b-image.png

                              f48afba3-482e-4973-a16d-a2c073db2b84-image.png

                              A Offline
                              A Offline
                              arumpel
                              schrieb am zuletzt editiert von
                              #17

                              @peterfido
                              Es ist nur ein kleiner Wifi ESP welcher ein PV Akku BMS ausließt um die Werte zu übermitteln. Man kann auch einen SOC Wert setzen, das ist eben ab und an erforderlich wenn die Batterie durch Eigenentladung ziemlich leer ist wenn lange nicht geladen wurde. Ich hab die Software für das Ding nicht programmiert, will nur den Befehl automatisieren.

                              Ja wenn ich in die Adressleiste mit Rechtklick klicke und vollständige URL Anzeigen wähle dann steht die Adresse mit http wie im Versuch mit Paste drin. Ich muss dann auf trotzdem weiter zur unsicheren Seite klicken dann geht der Befehl auch. Nur wenn Blockly das aufruft irgendwie nicht. Ich weiß nicht ob der Programmierer von dem Teil da vielleicht auch irgendwelche Fehler drin hat die es per Blockly unmöglich machen. Es dauert manchmal sehr lange bis das Device antwortet aber ich habe ja schon einen Timeout von 60s gesetzt.

                              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

                              498

                              Online

                              32.6k

                              Benutzer

                              81.9k

                              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