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

  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. HTTP-Post und Headerübergabe

NEWS

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.3k

HTTP-Post und Headerübergabe

Geplant Angeheftet Gesperrt Verschoben Blockly
25 Beiträge 3 Kommentatoren 2.4k 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.
  • H HackyPaddy

    @haus-automatisierung

    Bekommt man die .catch-Funktion denn im Blockly irgendwie dargestellt?

    haus-automatisierungH Offline
    haus-automatisierungH Offline
    haus-automatisierung
    Developer Most Active
    schrieb am zuletzt editiert von
    #16

    @hackypaddy Aktuell nicht. Das müsste man direkt in der JS-Funktion lösen und sich überlegen was man dann zurückliefert.

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

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

      @hackypaddy Aktuell nicht. Das müsste man direkt in der JS-Funktion lösen und sich überlegen was man dann zurückliefert.

      H Offline
      H Offline
      HackyPaddy
      schrieb am zuletzt editiert von
      #17

      @haus-automatisierung

      OK. Theoretisch müsste nichts zurück geliefert werden. Am besten wäre ein Eintrag ins Log und dann bricht das Script ab.

      Wird eh alle 10 Minuten aufgerufen...

      Nur der Adapter sollte nicht mehr abschmieren, das ist mehr als ungünstig :(

      Ich habe ja dein Script von oben genauso eingesetzt. Kann man das einfach auf try und catch umbauen?

      z.B. so:

      try {
      return httpPostAsync(
          'http://jsonplaceholder.typicode.com/posts',
          {
              title: 'foo',
              body: 'bar',
              userId: 1
          },
          {
              timeout: 2000,
              headers: {
                  'Content-Type': 'application/json'
              }
          }
      )
      }
      catch {
          console.warn("Test123");
      }
      
      
      haus-automatisierungH 1 Antwort Letzte Antwort
      0
      • H HackyPaddy

        @haus-automatisierung

        OK. Theoretisch müsste nichts zurück geliefert werden. Am besten wäre ein Eintrag ins Log und dann bricht das Script ab.

        Wird eh alle 10 Minuten aufgerufen...

        Nur der Adapter sollte nicht mehr abschmieren, das ist mehr als ungünstig :(

        Ich habe ja dein Script von oben genauso eingesetzt. Kann man das einfach auf try und catch umbauen?

        z.B. so:

        try {
        return httpPostAsync(
            'http://jsonplaceholder.typicode.com/posts',
            {
                title: 'foo',
                body: 'bar',
                userId: 1
            },
            {
                timeout: 2000,
                headers: {
                    'Content-Type': 'application/json'
                }
            }
        )
        }
        catch {
            console.warn("Test123");
        }
        
        
        haus-automatisierungH Offline
        haus-automatisierungH Offline
        haus-automatisierung
        Developer Most Active
        schrieb am zuletzt editiert von
        #18

        @hackypaddy sagte in HTTP-Post und Headerübergabe:

        Kann man das einfach auf try und catch umbauen?

        Theoretisch ja, aber dann geben manche Pfade ja keinen Wert zurück. Also könntest Du wieder Fehler bekommen, wenn Du in Blockly dann auf die Attribute zugreifen möchtest (weil ja nichts zurückgegeben wird). Da könnte man dann ein neues Objekt mit Dummy-Werten zurückliefern.

        z.B.

        try {
            return httpPostAsync(
                'http://jsonplaceholder.typicode.com/posts',
                {
                    title: 'foo',
                    body: 'bar',
                    userId: 1
                },
                {
                    timeout: 2000,
                    headers: {
                        'Content-Type': 'application/json'
                    }
                }
            );
        }
        catch (err) {
            console.warn(err);
        
            return {
                statusCode: -1,
                data: '',
                headers: [],
            };
        }
        

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

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

          @hackypaddy sagte in HTTP-Post und Headerübergabe:

          Kann man das einfach auf try und catch umbauen?

          Theoretisch ja, aber dann geben manche Pfade ja keinen Wert zurück. Also könntest Du wieder Fehler bekommen, wenn Du in Blockly dann auf die Attribute zugreifen möchtest (weil ja nichts zurückgegeben wird). Da könnte man dann ein neues Objekt mit Dummy-Werten zurückliefern.

          z.B.

          try {
              return httpPostAsync(
                  'http://jsonplaceholder.typicode.com/posts',
                  {
                      title: 'foo',
                      body: 'bar',
                      userId: 1
                  },
                  {
                      timeout: 2000,
                      headers: {
                          'Content-Type': 'application/json'
                      }
                  }
              );
          }
          catch (err) {
              console.warn(err);
          
              return {
                  statusCode: -1,
                  data: '',
                  headers: [],
              };
          }
          
          H Offline
          H Offline
          HackyPaddy
          schrieb am zuletzt editiert von
          #19

          @haus-automatisierung

          Perfekt, so könnte ich über den Statuscode im Blockly weiter machen. Das ne gute Idee!

          Sagmal, bietest Du auch einen MasterKurs "JavaScript Advance" an. Wäre mal ne Idee :grin:

          haus-automatisierungH 1 Antwort Letzte Antwort
          0
          • H HackyPaddy

            @haus-automatisierung

            Perfekt, so könnte ich über den Statuscode im Blockly weiter machen. Das ne gute Idee!

            Sagmal, bietest Du auch einen MasterKurs "JavaScript Advance" an. Wäre mal ne Idee :grin:

            haus-automatisierungH Offline
            haus-automatisierungH Offline
            haus-automatisierung
            Developer Most Active
            schrieb am zuletzt editiert von
            #20

            @hackypaddy sagte in HTTP-Post und Headerübergabe:

            Sagmal, bietest Du auch einen MasterKurs "JavaScript Advance" an.

            Hatte ich mir überlegt, aber wo fängt man da an? All das hier sind ja JavaScript-Grundlagen und haben erstmal nichts mit dem ioBroker zu tun.

            Und wenn ich ganz vorne anfange, dann ist es ein extrem weiter Weg der ganzen Grundlagen, bis ich überhaupt mal bei ioBroker-Themen ankomme. Und dann sind wir so weit vom Smart Home Thema weg, dass ich mich erstmal dagegen entschieden habe.

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

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

              @hackypaddy sagte in HTTP-Post und Headerübergabe:

              Sagmal, bietest Du auch einen MasterKurs "JavaScript Advance" an.

              Hatte ich mir überlegt, aber wo fängt man da an? All das hier sind ja JavaScript-Grundlagen und haben erstmal nichts mit dem ioBroker zu tun.

              Und wenn ich ganz vorne anfange, dann ist es ein extrem weiter Weg der ganzen Grundlagen, bis ich überhaupt mal bei ioBroker-Themen ankomme. Und dann sind wir so weit vom Smart Home Thema weg, dass ich mich erstmal dagegen entschieden habe.

              H Offline
              H Offline
              HackyPaddy
              schrieb am zuletzt editiert von
              #21

              @haus-automatisierung

              Also ich wäre dabei. Ich muss eh alles von Grund neu lernen, bin schon viel zu lange raus.

              Aber! Die Lösung mit try catch läuft auch nicht. Ich hab testweise mal die URL geändert, sodass es zwangsläufig zum Fehler kommt. Er steigt wieder aus mit dem Hinweis, kein .catch oder Catch-Block vorhanden. Der Adapter schmiert ab...

              
              javascript.0
              2024-11-05 11:30:00.205	error	unhandled promise rejection: getaddrinfo ENOTFOUND XXX
              
              javascript.0
              2024-11-05 11:30:00.205	error	Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch().
              

              Hmm, hast noch ne Idee?

              haus-automatisierungH 1 Antwort Letzte Antwort
              0
              • H HackyPaddy

                @haus-automatisierung

                Also ich wäre dabei. Ich muss eh alles von Grund neu lernen, bin schon viel zu lange raus.

                Aber! Die Lösung mit try catch läuft auch nicht. Ich hab testweise mal die URL geändert, sodass es zwangsläufig zum Fehler kommt. Er steigt wieder aus mit dem Hinweis, kein .catch oder Catch-Block vorhanden. Der Adapter schmiert ab...

                
                javascript.0
                2024-11-05 11:30:00.205	error	unhandled promise rejection: getaddrinfo ENOTFOUND XXX
                
                javascript.0
                2024-11-05 11:30:00.205	error	Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch().
                

                Hmm, hast noch ne Idee?

                haus-automatisierungH Offline
                haus-automatisierungH Offline
                haus-automatisierung
                Developer Most Active
                schrieb am zuletzt editiert von
                #22

                @hackypaddy sagte in HTTP-Post und Headerübergabe:

                Aber! Die Lösung mit try catch läuft auch nicht.

                Ach sorry, wenn man nebenbei etwas anderes macht, ... Das liegt daran, dass ja das Promise zurückgegeben wird und es außerhalb ausgeführt wird. So sollte es klappen:

                try {
                    const response = await httpPostAsync(
                        'http://jsonplaceholder.typicode.com/posts',
                        {
                            title: 'foo',
                            body: 'bar',
                            userId: 1
                        },
                        {
                            timeout: 2000,
                            headers: {
                                'Content-Type': 'application/json'
                            }
                        }
                    );
                
                    return response;
                } catch (err) {
                    console.warn(err);
                 
                    return {
                        statusCode: -1,
                        data: '',
                        headers: [],
                    };
                }
                

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

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

                  @hackypaddy sagte in HTTP-Post und Headerübergabe:

                  Aber! Die Lösung mit try catch läuft auch nicht.

                  Ach sorry, wenn man nebenbei etwas anderes macht, ... Das liegt daran, dass ja das Promise zurückgegeben wird und es außerhalb ausgeführt wird. So sollte es klappen:

                  try {
                      const response = await httpPostAsync(
                          'http://jsonplaceholder.typicode.com/posts',
                          {
                              title: 'foo',
                              body: 'bar',
                              userId: 1
                          },
                          {
                              timeout: 2000,
                              headers: {
                                  'Content-Type': 'application/json'
                              }
                          }
                      );
                  
                      return response;
                  } catch (err) {
                      console.warn(err);
                   
                      return {
                          statusCode: -1,
                          data: '',
                          headers: [],
                      };
                  }
                  
                  H Offline
                  H Offline
                  HackyPaddy
                  schrieb am zuletzt editiert von
                  #23

                  @haus-automatisierung

                  Diesmal klappt es.
                  Genau da brauch ich Nachhilfe :joy:

                  Er gibt jetzt den Statuscode vom Catch Block zurück und der Adapter schmiert nicht mehr ab.

                  Kann man den JavaScript-Adapter die Errormeldung im Log noch irgendwie abgewöhnen?

                  javascript.0
                  2024-11-05 11:58:00.018	error	script.js.common.ATU.Messdaten_senden: httpPost(url=XXX, error=getaddrinfo ENOTFOUND XXX)
                  

                  Ich hab ja schon die Behandlung im Blockly, wäre doppelt gemoppelt.

                  haus-automatisierungH 1 Antwort Letzte Antwort
                  0
                  • H HackyPaddy

                    @haus-automatisierung

                    Diesmal klappt es.
                    Genau da brauch ich Nachhilfe :joy:

                    Er gibt jetzt den Statuscode vom Catch Block zurück und der Adapter schmiert nicht mehr ab.

                    Kann man den JavaScript-Adapter die Errormeldung im Log noch irgendwie abgewöhnen?

                    javascript.0
                    2024-11-05 11:58:00.018	error	script.js.common.ATU.Messdaten_senden: httpPost(url=XXX, error=getaddrinfo ENOTFOUND XXX)
                    

                    Ich hab ja schon die Behandlung im Blockly, wäre doppelt gemoppelt.

                    haus-automatisierungH Offline
                    haus-automatisierungH Offline
                    haus-automatisierung
                    Developer Most Active
                    schrieb am zuletzt editiert von
                    #24

                    @hackypaddy sagte in HTTP-Post und Headerübergabe:

                    Kann man den JavaScript-Adapter die Errormeldung im Log noch irgendwie abgewöhnen?

                    Gibt dazu schon einen Feature Request auf GitHub. Muss halt jemand machen :)

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

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

                      @hackypaddy sagte in HTTP-Post und Headerübergabe:

                      Kann man den JavaScript-Adapter die Errormeldung im Log noch irgendwie abgewöhnen?

                      Gibt dazu schon einen Feature Request auf GitHub. Muss halt jemand machen :)

                      H Offline
                      H Offline
                      HackyPaddy
                      schrieb am zuletzt editiert von
                      #25

                      @haus-automatisierung

                      Ok, dann halte ich die Füße still :grinning:

                      Danke Dir für die Hilfe!

                      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

                      642

                      Online

                      32.4k

                      Benutzer

                      81.4k

                      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