- LiFePO4 Speicher Test         
Ergebnis 1 bis 10 von 97

Thema: esp8266, Arduino IDE: neuer Versuch: warum wird website sofort beendet?

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    HaWe
    Gast
    naja, es funktioniert doch im Prinzip, bis auf einen "Schönheitsfehler", username wird korrekt geprüft und pwd auch - zumindest in der Version Seite 2 oben
    https://www.roboternetz.de/community...l=1#post655516 ,
    und auch wenn man hier noch 2x hintereinander ENTER drücken muss.
    Diesen Schönheitsfehler gilt es nun zufinden und ebenfalls auszumerzen - unter core 2.4.0 hat es ja auch noch 100%ig funktioniert.

    Sehr schön wäre es auch, wenn man GET durch POST ersetzen könnte.

    Cookies will ich keine setzen.

    Deine sehr allgemeinen Tipps kann ich allerdings nicht umsetzen, mein Ursprungscode war bereits so leistungsfähig wie ich es überhaupt verstehen und schreiben konnte - für einen ganz neu geschriebenen Code wäre ich ntl auch sehr dankbar .

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    40
    Beiträge
    3.416
    Ich habe oben mal eine Empfehlung ergänzt wie du dich an deine konkrete Problematik heranarbeiten kannst.
    Ich wollte eigentlich nur so höflich wie möglich darauf hinweisen dass man mit dem Code wie er ist nicht unbedingt weiterarbeiten sollte und nochmal sauber neu anfangen sollte weil amn sonst mit Phänomenen und Seiteneffekten arbeitet die nicht im geringsten Hilfreich für das Verständnis sind.

    Ich schlage vor du schreibst einfach nochmal ein neues Beispiel welches nichts weiter macht als Anfragen entgegen zu nehmen und diese als HTML oder Text an den Browser zurück spiegelt.

    Mit dem String den du da spiegelst kannst du dann einen Parser bauen um die Anfrage auszuwerten und entsprechend Webseiten auszugeben.

    Wenn das klappt, kannst du dir dann eine POST und GET Anfrage in einer deiner Webseiten einbauen und spiegeln lassen um deinen Parser zu erweitern

    edit: ich versuche hier nur mal einen kleinen Objektorientierten Ansatz für das Verständnis

    Ich bin der Server und du der Browser, du kannst mich entweder mit der Zimmernummer und dem Geheimen Passwort ansprechen (GET mit Daten in der Aufrufzeile ... unsicher weil Klartext) und ich lasse dich rein
    oder du musst erstmal mich fragen ob ich dir das Klemmbrett(Webseite) mit dem Login Formular gebe (GET) damit du es mir ausgefüllt zurück geben kannst (POST)

    In jedem Fall muss ich wissen wer du bist und solange ich dich sehe (offener Socket) weis ich auch dass die Formulardaten oder Anfragen von dir sind. Wenn du allerdings nur einmal außer Sichtweite gehst muss ich annehmen dass du nicht mehr du bist oder du dich mir gegenüber ausweist.
    Geändert von Ceos (21.10.2019 um 14:47 Uhr)
    Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
    nicht.

  3. #3
    HaWe
    Gast
    ich selber kann es nicht besser und ich würde es momentan auch nicht anders machen, so wie ich das Prinzip verstehe
    - vlt hat Moppi ja mit seiner Version noch etwas mehr Erfolg, denn die letzte hängt ja auch wieder.
    Wir hatten das Thema ja schon öfter - ich brauche keine allgemeinen Ratschläge, was ich brauche, sondern Code, der kompilierbar ist und den ich testen kann.
    Konkrete Codevorschläge also immer gerne!

  4. #4
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    40
    Beiträge
    3.416
    Das Problem ist, dass du noch nicht mal die Grundlage zu verstehen scheinst wenn man den Code ansieht. (nicht bös gemeint) Du verarbeitest nicht mal die Anfrage sondern wartest einfach auf "irgendeine" Anfrage und spuckst die Webseite aus.
    Wenn du jemals authorized auf true setzt sollte der Browser theoretisch nie wieder antworten weil der client schon nach dem verbinden sofort mit einem return abgewürgt wird.
    Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
    nicht.

  5. #5
    HaWe
    Gast
    wie gesagt, es funktioniert alles bis core 2.4.0, erst danch nicht mehr.
    Sogar jetzt aber geht das Einloggen und Ausloggen (aus der Haupt-html-Seite) einwandfrei, denn dadurch wird authorized wieder auf false gesetzt.
    Je nachdem,, wie authorized gesetzt ist, wird im Hauptprogramm (loop() ) entweder die Login Seite aufgerufen oder die Haupt-Website.

    Wirklich hilfreich ist jetzt tatsächlich nur funktionierender Code für core 2.5.2

  6. #6
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    40
    Beiträge
    3.416
    Je nachdem,, wie authorized gesetzt ist, wird im Hauptprogramm (loop() ) entweder die Login Seite aufgerufen oder die Haupt-Website.
    ah okay das war aus dem code auf seite 1 jetzt irgendwie nicht ersichtlich

    Wirklich hilfreich ist jetzt tatsächlich nur funktionierender Code für core 2.5.2
    dafür müsste ich erstmal arbeiten wenn du verstehst was ich meine
    Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
    nicht.

  7. #7
    HaWe
    Gast
    tatsächlich lese ich aber auch die Eingabe aus und verarbeite sie (was ja auch funktioniert):

    Code:
    while ( (readString.length() < TOKLEN) && (c != '\n') ) {
              readString += c;
              c = client.read();
          }
    
          readString.toCharArray(strinput, MAXLEN);
          // hier fehlt ein kleiner Teil fürs Parsen:
          // cstringarg(strinput, "uname", struname);  // uname
          // cstringarg(strinput, "upwd", strupwd);   // upwd
    
     
          if(strstr(website_upwd,strupwd)!=NULL & strstr(website_uname,struname)!=NULL)
    {...}
    wenn du aber hier nicht am Code mit-arbeiten willst, dann herzlichen Dank bis hierhin...
    Geändert von HaWe (21.10.2019 um 15:06 Uhr)

  8. #8
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    40
    Beiträge
    3.416
    naja du versuchst das passwort und den usernamen zu finden aber du wertest nicht wirklich effektiv den aufruf aus und damit fehlt dir schonmal das grundlegende verständnis wie anfragen aussehen udn funktionieren

    man kann nicht alles einfach so abkürzen oder muss sich einer library bedienen

    wenn du aber hier nicht am Code mit-arbeiten willst, dann herzlichen Dank bis hierhin...
    warum versuche ich dir gegenüber überhaupt noch freundlich zu sein wenn du einem immer die Tür ins Kreuz schlägst ... merkst du es eigentlich noch? Renn halt gegen deine selbst gemauerte Wand bis dir der Schädel platzt...
    Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
    nicht.

Ähnliche Themen

  1. arduino ide mit esp8266
    Von NotEvil im Forum NodeMCU-Board und ESP8266, ESP32-Serie
    Antworten: 4
    Letzter Beitrag: 12.01.2017, 14:17
  2. Raspberry Pi 3: Neuer Bastelrechner ist ab sofort verfügbar
    Von Roboternetz-News im Forum Neuigkeiten / Technik-News / Nachrichten / Aktuelles
    Antworten: 4
    Letzter Beitrag: 29.02.2016, 20:56
  3. [ERLEDIGT] Google wird am Lenovo-Tablet ohne Zutun beendet
    Von oberallgeier im Forum Offtopic und Community Tratsch
    Antworten: 5
    Letzter Beitrag: 24.11.2015, 08:02
  4. Funktion wird nicht richtig beendet
    Von kowolfgang im Forum C - Programmierung (GCC u.a.)
    Antworten: 16
    Letzter Beitrag: 31.12.2008, 16:37
  5. schieberegister neuer versuch...
    Von Bluesmash im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 12
    Letzter Beitrag: 11.07.2005, 21:10

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

fchao-Sinus-Wechselrichter AliExpress