Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. [gelöst] Axios implementieren

    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

    [gelöst] Axios implementieren

    This topic has been deleted. Only users with topic management privileges can see it.
    • haus-automatisierung
      haus-automatisierung Developer Most Active @Ben1983 last edited by

      @ben1983 sagte in Axios implementieren:

      Um nicht mit exec arbeiten zu müssen, würde ich mir gernex exios zusätzlich in den Javascriptadapter holen.

      Ist im Standard schon enthalten. Generell hab ich in der Doku immer alles gefunden, was ich so gesucht habe: https://github.com/axios/axios/blob/v1.x/README.md

      Ben1983 1 Reply Last reply Reply Quote 0
      • T
        ticaki Developer @Ben1983 last edited by

        @ben1983 mit meinem Fork vom wled Adapter geht das. Mehr Info spaäter

        1 Reply Last reply Reply Quote 0
        • Ben1983
          Ben1983 @haus-automatisierung last edited by

          @haus-automatisierung OK, also muss ich es nicht hinzufügen?

          1 Reply Last reply Reply Quote 0
          • Ben1983
            Ben1983 last edited by Ben1983

            @haus-automatisierung stehe gerade auf dem schlauch:
            Wenn ich das Beispiel sehen:

            curl -X POST "http://[WLED-IP]/json/state" -d '{"on":"t","v":true}' -H "Content-Type: application/json"
            

            wie würde ich es denn mit axios ersetzen?
            Habe das mal so ähnlich vorbereitet, was ich vor habe:

            const host = "http://192.168.2.142/json/state"
            
            const segmentObject = {
                "seg": [{
                "start": 0,
                "stop": 20,
                "len": 20,
                }]
            };
            
            import axios from 'axios';
            axios({
              method: 'post',
              url: host,
              data: segmentObject
            });
            

            und bekomme zusätzlich nochden Fehler:

            Cannot find module 'axios' or its corresponding type declarations.
            
            T 1 Reply Last reply Reply Quote 0
            • T
              ticaki Developer @Ben1983 last edited by

              @ben1983
              require nicht import

              Ben1983 1 Reply Last reply Reply Quote 0
              • Ben1983
                Ben1983 @ticaki last edited by Ben1983

                @ticaki dann bekomme ich:
                ok. hatte mich schon gewundert... Aber bin heute echt nicht auf der höhe.

                Also so?:

                
                const host = "http://192.168.2.142/json/state"
                
                const segmentObject = {
                    "seg": [{
                    "start": 0,
                    "stop": 30,
                    "len": 30,
                    }]
                };
                
                const axios = require('axios');
                axios({
                  method: 'post',
                  url: host,
                  data: segmentObject
                });
                
                Codierknecht T 2 Replies Last reply Reply Quote 0
                • Codierknecht
                  Codierknecht Developer Most Active @Ben1983 last edited by Codierknecht

                  @ben1983
                  Versuch's mal so:

                  const host = "http://192.168.2.142/json/state"
                  const axios = require('axios');
                  
                  const segmentObject = {
                      "seg": [{
                          "start": 0,
                          "stop": 30,
                          "len": 30,
                      }]
                  };
                  
                  async function getData() {
                      const response = await axios.post(host, segmentObject);
                      console.log(JSON.stringify(response));
                  }
                  
                  getData();
                  
                  Ben1983 1 Reply Last reply Reply Quote 0
                  • Ben1983
                    Ben1983 @Codierknecht last edited by

                    @codierknecht Danke, aber meine Version hat zumindest in Sachen Schreiben auf funktioniert.

                    Codierknecht 1 Reply Last reply Reply Quote 0
                    • Codierknecht
                      Codierknecht Developer Most Active @Ben1983 last edited by

                      @ben1983
                      OK. Hatte mich gewundert, was nach dem

                      dann bekomme ich:

                      fehlt?

                      Ben1983 2 Replies Last reply Reply Quote 0
                      • Ben1983
                        Ben1983 @Codierknecht last edited by

                        @codierknecht Oh, sorry. das war ein Falscher Text.

                        1 Reply Last reply Reply Quote 0
                        • Ben1983
                          Ben1983 @Codierknecht last edited by

                          @codierknecht Es funktioniert zwar alles.
                          In deiner Version ist natürlich die Sache noch etwas schöner.
                          (Muss allerdings response.data loggen, nicht nur response).

                          Allerding bekomme ich beim require('axios') noch die Meldung:

                          Cannot find module 'axios' or its corresponding type declarations.
                          

                          Was kann das noch sein?

                          Codierknecht 1 Reply Last reply Reply Quote 0
                          • Codierknecht
                            Codierknecht Developer Most Active @Ben1983 last edited by

                            @ben1983 sagte in [gelöst] Axios implementieren:

                            Allerding bekomme ich beim require('axios') noch die Meldung:

                            Aber nur im Editor. Wird da gekringelt und angemeckert, funzt aber einwandfrei.
                            Mit der Macke muss man entweder leben oder den Editor dazu zwingen ihn zu ignorieren:

                            // @ts-ignore
                            const axios = require('axios');
                            
                            1 Reply Last reply Reply Quote 0
                            • T
                              ticaki Developer @Ben1983 last edited by ticaki

                              @ben1983
                              Ja, aber wie oben geschrieben,wenn du den wled adapter von mir nimmst, gibt es einen State in dem du das Json rein wirst und es wird dann über die websocket verbindung vom wled adapter versendet:

                              https://github.com/ticaki/ioBroker.wled

                              Die PR ist ist beim Dutchman eingereicht, mal sehen wann er es added.

                              mich hats genervt das "an" "helligkeit" "preset" in 3 Stufen ausgeführt wird... Deshalb nen State eingebaut dem ich dann so die Daten übergebe:

                              setState(`${light.id}.action`, JSON.stringify({
                                                      "bri": bri,
                                                      "on": lOn,
                                                      'ps': cArray[2],
                                                      'transition': 1
                                                  }))
                              

                              Das sollte auch für Steuerung von einzelnen LED's gut sein.

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

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              680
                              Online

                              31.8k
                              Users

                              80.0k
                              Topics

                              1.3m
                              Posts

                              4
                              14
                              323
                              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