Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. httpPost - Übergabe von Parametern

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    httpPost - Übergabe von Parametern

    This topic has been deleted. Only users with topic management privileges can see it.
    • BananaJoe
      BananaJoe Most Active last edited by

      Ich nutze folgende JavaScript-Funktion (mit request) um ein Bild an ein OpenEPaper-Tag zu senden:

      async function ScreenshotVISandUpload2OpenEPaperLink(imageSaveToFilenameWithPath, urlOfVISView, viewWidth, viewHeight, cutoutX, cutoutY, cutoutWidth, cutoutHeight, jpgQuality, waitForSelector, imageUploadURL, ePaperMAC) {
          sendTo('puppeteer.0', 'screenshot', { 
              url: urlOfVISView,                      /* URL der Webseite aus welcher der Screenshot erstellt werden soll */
              path: imageSaveToFilenameWithPath,      /* Dateiname und Pfad für lokales Speichern des Bildes */
              width: viewWidth,                       /* Breite des virtuellen Browserfensters */
              height: viewHeight,                     /* Höhe des virtuellen Browserfensters */
              quality: jpgQuality,                    /* Qualität des JPG, sollte immer 100 sein */
          
              waitOption: {
                  waitForSelector: waitForSelector,   /* Wartet for dem Screenshot bis dieses Objekt sichtbar ist */
                  waitForTimeout: 10000               /* Timeout, solange wird auf das Objekt gewartet */
              },
          
              fullPage: false,                        /* True würde die ganze Seite Snapshoten und die clip-Anweisungen ignorieren */
          
              clip: {         
                  x: cutoutX,                         /* Koordinate X an der der Ausschnitt beginnen soll */
                  y: cutoutY,                         /* Koordinate Y an der der Ausschnitt beginnen soll */
                  width: cutoutWidth,                 /* Breite des Ausschnittes */
                  height: cutoutHeight                /* Höhe des Ausschnittes */
                }
          }, obj => {
                if (obj.error) {
                  console.warn("Fehler beim Aufruf der View: " + urlOfVISView + " => " + obj.error.message);
                } else {
                  /* in obj.result sind die Binärdaten des Bildes */
                  var request = require('request');
                  var options = {
                      url: imageUploadURL,
                      method: 'POST',
                      formData: { 
                          "dither": "0", 
                          "mac": ePaperMAC,
                          "image": obj.result },
                  };
                  /* und die URL aufrufen: */
                  request(options,function (error, response, body){
                      console.log("Image:" + imageSaveToFilenameWithPath + " => ImageUploadStatusCode: " + response.statusCode);
                  });
                }
          });
      
      }
      

      Also ein SendTo zu Puppeteer, als Ergebnis erhalte ich ein Objekt obj bei dem unter obj.result die Bilddaten stecken die ich senden will.

      Jetzt spiele ich schon eine Weile rum um das ganze nun mit dem neuen httpPost zu lösen.
      Mein Problem ist wie ich das hier bei dem Befehl unterbringe:

      formData: { 
          "dither": "0", 
          "mac": ePaperMAC,
          "image": obj.result },
      };
      

      Ich habe es im ersten und 2 Teil versucht (die { }), mit und ohne formData, die Bezeichnungen mit und ohne " ...
      Mein AccessPoint für die Epaper meldet immer nur "200 ok", macht aber nichts, also ist falsch was ich sende.

      Danke

      1 Reply Last reply Reply Quote 0
      • First post
        Last post

      Support us

      ioBroker
      Community Adapters
      Donate

      974
      Online

      31.8k
      Users

      80.0k
      Topics

      1.3m
      Posts

      1
      1
      147
      Loading More Posts
      • Oldest to Newest
      • Newest to Oldest
      • Most Votes
      Reply
      • Reply as topic
      Log in to reply
      Community
      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
      The ioBroker Community 2014-2023
      logo