Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • 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. [gelöst] http request

NEWS

  • Neues YouTube-Video: Visualisierung im Devices-Adapter
    BluefoxB
    Bluefox
    13
    1
    1.6k

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    8
    1
    2.3k

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    11
    1
    1.2k

[gelöst] http request

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
29 Beiträge 7 Kommentatoren 8.7k Aufrufe
  • Ä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.
  • Lenny.CBL Offline
    Lenny.CBL Offline
    Lenny.CB
    Most Active
    schrieb am zuletzt editiert von
    #21

    @homecineplexx:

    den javaScript adpater hast du mal auf debug gestellt? ` jupp
    @homecineplexx:

    siehst du eigentlich irgendwo einen log, dass er versucht diesen request abzuschicken? ` nein

    ich fasse mal zusammen:

    deine Code-Zeile erzeugt keine Befehle und auch keine Logeinträge

    var request = require('request');
    request("http://192.168.2.37:8091/SetState.pl?R16=1&RT16=0").on('error', function  (e) {  log(e, 'error');});
    

    Ich hatte dann mal aus dem https://www.npmjs.com/package/request was probiert:

    var request = require('request');
    request("http://192.168.2.37:8091/SetState.pl?R16=1&RT16=0", function  (error, response, body) {
        log('error: ' + error);
        log('response: ' + JSON.stringify(response));
        log('body: ' + body);
    });
    

    erzeugt dann dieses Log:````
    12:58:34.714 [info] javascript.0 script.js.Testscripte.Skript1: error: null
    12:58:34.715 [info] javascript.0 script.js.Testscripte.Skript1: response: {"statusCode":401,"body":"","headers":{"server":"PoolController","www-authenticate":"Poolauth realm="NeedPassword"","content-type":"text/html"},"request":{"uri":{"protocol":"http:","slashes":true,"auth":null,"host":"192.168.2.37:8091","port":"8091","hostname":"192.168.2.37","hash":null,"search":"?R16=1&RT16=0","query":"R16=1&RT16=0","pathname":"/SetState.pl","path":"/SetState.pl?R16=1&RT16=0","href":"http://192.168.2.37:8091/SetState.pl?R16=1&RT16=0"},"method":"GET","headers":{}}}
    12:58:34.716 [info] javascript.0 script.js.Testscripte.Skript1: body:

    
    da steht was von "****Poolauth realm=\"NeedPassword\****". Also erweitert mit den Zeilen die ich bei request-npm gefunden habe (ob das richtig ist, sein mal dahin gestellt):````
    request({
        method: 'POST',
        uri: 'http://192.168.2.37:8091/SetState.pl?R16=1&RT16=0',
        auth: [{
            'user': 'admin',
            'pass': 'admin',
            'sendImmediately': false
            }]
      },
      function (error, response, body) {
        log('error: ' + error);
        log('response: ' + response);
        //log('response: ' + JSON.stringify(response));
        log('body: ' + body);
      });
     */
    

    erzeug dieses Log:````
    13:04:02.185 [info] javascript.0 script.js.Testscripte.Skript1: error: Error: no auth mechanism defined
    13:04:02.185 [info] javascript.0 script.js.Testscripte.Skript1: response: undefined
    13:04:02.185 [info] javascript.0 script.js.Testscripte.Skript1: body: undefined

    
    Hmmm, nun gehts nicht weiter…
    1 Antwort Letzte Antwort
    0
    • H Offline
      H Offline
      homecineplexx
      schrieb am zuletzt editiert von
      #22

      und so?

      var requestTest = require('request'),
      
      var options = {
          url: 'http://192.168.2.37:8091/SetState.pl?R16=1&RT16=0',
          method: 'POST',
          formData: {
              'username':'admin',
              'password':'admin'
          }
      }
      
      requestTest(options, function  (error, response, body) {
          log('error: ' + error);
          log('response: ' + JSON.stringify(response));
          log('body: ' + body);
      });
      
      
      1 Antwort Letzte Antwort
      0
      • Lenny.CBL Offline
        Lenny.CBL Offline
        Lenny.CB
        Most Active
        schrieb am zuletzt editiert von
        #23

        @homecineplexx:

        und so?

        var requestTest = require('request'),
        
        var options = {
            url: 'http://192.168.2.37:8091/SetState.pl?R16=1&RT16=0',
            method: 'POST',
            formData: {
                'username':'admin',
                'password':'admin'
            }
        }
        
        requestTest(options, function  (error, response, body) {
            log('error: ' + error);
            log('response: ' + JSON.stringify(response));
            log('body: ' + body);
        });
        
        ```` `  
        

        ergibt das: ` > 14:45:24.506 [info] javascript.0 script.js.Testscripte.Skript1: error: Error: read ECONNRESET

        14:45:24.523 [info] javascript.0 script.js.Testscripte.Skript1: response: undefined

        14:45:24.523 [info] javascript.0 script.js.Testscripte.Skript1: body: undefined `

        habe in der ersten Zeile mal das "Komma" mit einem "Semikolon" getauscht?

        1 Antwort Letzte Antwort
        0
        • H Offline
          H Offline
          homecineplexx
          schrieb am zuletzt editiert von
          #24

          Sorry war ein Schreibfehler.

          Natürlich so.

          Aber du bekommst keine Authfehler mehr?

          var requestTest = require('request');
          
          var options = {
              url: 'http://192.168.2.37:8091/SetState.pl?R16=1&RT16=0',
              method: 'POST',
              formData: {
                  'username':'admin',
                  'password':'admin'
              }
          };
          
          requestTest(options, function  (error, response, body) {
              log('error: ' + error);
              log('response: ' + JSON.stringify(response));
              log('body: ' + body);
          });
          
          
          1 Antwort Letzte Antwort
          0
          • Lenny.CBL Offline
            Lenny.CBL Offline
            Lenny.CB
            Most Active
            schrieb am zuletzt editiert von
            #25

            @homecineplexx:

            Sorry war ein Schreibfehler.

            Natürlich so.

            Aber du bekommst keine Authfehler mehr?

            var requestTest = require('request');
            
            var options = {
                url: 'http://192.168.2.37:8091/SetState.pl?R16=1&RT16=0',
                method: 'POST',
                formData: {
                    'username':'admin',
                    'password':'admin'
                }
            };
            
            requestTest(options, function  (error, response, body) {
                log('error: ' + error);
                log('response: ' + JSON.stringify(response));
                log('body: ' + body);
            });
            
            ```` `  Nein.
            1 Antwort Letzte Antwort
            0
            • H Offline
              H Offline
              homecineplexx
              schrieb am zuletzt editiert von
              #26

              Schaltet dein Teil jetzt mal?

              1 Antwort Letzte Antwort
              0
              • Lenny.CBL Offline
                Lenny.CBL Offline
                Lenny.CB
                Most Active
                schrieb am zuletzt editiert von
                #27

                @homecineplexx:

                Schaltet dein Teil jetzt mal? ` Ne tuts leider nicht…

                1 Antwort Letzte Antwort
                0
                • H Offline
                  H Offline
                  homecineplexx
                  schrieb am zuletzt editiert von
                  #28

                  mal was anderes. siehst du auf dem 192.168.2.37:8091, den du steuern möchtest, irgendwelche logs?

                  1 Antwort Letzte Antwort
                  0
                  • Lenny.CBL Offline
                    Lenny.CBL Offline
                    Lenny.CB
                    Most Active
                    schrieb am zuletzt editiert von
                    #29

                    @homecineplexx:

                    mal was anderes. siehst du auf dem 192.168.2.37:8091, den du steuern möchtest, irgendwelche logs? ` Logs in dem Sinne sind da nicht zu holen.

                    ABER, ich habe jetzt was gefunden was auch klappt.

                    var request = require('request'),
                        username = "admin",
                        password = "admin",
                        url = 'http://192.168.2.37:8091/SetState.pl?R16=0&RT16=0',
                        auth = "Basic " + new Buffer(username + ":" + password).toString("base64");
                    
                    request({
                            url : url,
                            headers : {'Authorization' : auth}
                        },
                        function (error, response, body) {
                                log('error: ' + error);
                                log('response: ' + JSON.stringify(response));
                                log('body: ' + body);
                        }
                    );
                    

                    erzeugt dann dieses LOG und schaltet auch das Relais im Controler:

                    08:23:02.308	[info]	javascript.0 script.js.Testscripte.Skript1: error: null
                    08:23:02.310	[info]	javascript.0 script.js.Testscripte.Skript1: response: {"statusCode":200,"body":"0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0\n","headers":{"server":"PoolController V.1.6.8","connection":"close","content-type":"text/plain; charset=ISO-8859-1"},"request":{"uri":{"protocol":"http:","slashes":true,"auth":null,"host":"192.168.2.37:8091","port":"8091","hostname":"192.168.2.37","hash":null,"search":"?R16=0&RT16=0","query":"R16=0&RT16=0","pathname":"/SetState.pl","path":"/SetState.pl?R16=0&RT16=0","href":"http://192.168.2.37:8091/SetState.pl?R16=0&RT16=0"},"method":"GET","headers":{"Authorization":"Basic YWxxxx46xxxxaWxxxx=="}}}
                    08:23:02.310	[info]	javascript.0 script.js.Testscripte.Skript1: body: 0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0
                    

                    nochmal danke an alle die so geduldig waren. :D

                    1 Antwort Letzte Antwort
                    1

                    Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                    Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                    Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                    Registrieren Anmelden
                    Antworten
                    • In einem neuen Thema antworten
                    Anmelden zum Antworten
                    • Älteste zuerst
                    • Neuste zuerst
                    • Meiste Stimmen


                    Support us

                    ioBroker
                    Community Adapters
                    Donate

                    392

                    Online

                    32.9k

                    Benutzer

                    83.2k

                    Themen

                    1.3m

                    Beiträge
                    Community
                    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                    ioBroker Community 2014-2026
                    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