Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Events feuern zu schnell, wie Stack für Events einbauen?
#1
Hallo,
ich kämpfe immer noch damit die bei einem Online Roulettespiel passierenden HTTP Requests und Responses zu verarbeiten.
Heißt ich habe ein Contentscript (ja, ich werkle an eienr Chrome extension), die in der Theorie jedes Event abfängt, nur bestimmte Events mit bestimmter Response verwertet und dann vielerlei DOM Veränderungen vornimmt,
unter Anderem gewisse div Elemente sucht, aus der Dom removed und neu zusammenbaut und wieder reinpackt.

Nur komme ich mit dem Verhalten des Ganze gar nicht klar.
Die auftretenden Requests und Responses sind sehr eindeutig und klar, an Denen kanns nicht liegen.
Aber manchmal scheint so Manches Event nicht oder nicht ganz verarbeitet zu werden.

Eigentlich soll er bspw. bei einer bestimmten Response aus deren Responsebody eine Farbe ablesen und daavon ausgehend eine schwarze, blaue oder weiße Box anzeigen.
Also die alte Box removen und eine neue Box in der passenden Farbe in die DOM wieder einfügen (Box ist in meinem Fall ein div Element, darin ein p Element mit passender Hintergrundfarbe und Abmessungen).

Tut er aber nicht.
Auch amcht sien verhalten nciht immer Sinn.
Bspw. wird in eienr der bestimmten Response eine Balance mitgeshcickt, eigentlich soll bei der Response die Differenz zur alten balance berechnet werden und von dieser Differenz ausgehend wieder eine bestimmte Farbbox gemalt werden.

Klappt nur nicht immer bzw. nur in jedem dritten Fall.
Manchmal reagiert er, manchmal reagiert er gar nicht drauf, manchmal malt er sogar eine Box der falschen Farbe O_o




Nun vermute ich, da mir echt kein besserer Grund mehr einfällt, dass sich die Events "überschneiden".
Also eine Request abgefangen wird und bevor der ganze Code für dieses Event durchgespielt wurde, kommt ein neues Event und sorgt dafür dass der vorherige Durchgang mittendrin abgebrochen wird.
Was zu unberechenbaren Ergebnissen führen würde.

Frage ist nur, wie verhindern?
Im Prinzip will ich dass er für jedes Event den Code bis zum Ende durchspielt.
Mi wäre es am Liebsten wenn er sich merkt was der Reihe nahc kam und, falls er mit Bearbeiten hintendran hängt, wie im Supermarkt trotzdem erst das Event 1 ganz zu Ende macht und dann Event2 verarbeitet usw. Und bei einem neuen Event nicht Alles über den Haufen schmeißt Undecided

Frage ist nur, kann man sowas irgendwie erreichen?


Weil in meinem Fall wird da wie erwähnt ganz am Anfang ein Contentscript auf der Seite eingefügt und diese hat, abgesehen von 2-3 Vairabelinitialisierungen, ansosnten nur einen riesigen Block an Anweisungen mit
(function(xhr) {
  //Hier Aller Code
})(XMLHttpRequest);

drumherum.

Ich will einerseits nicht dass er wegen eines neuen Events die alte Eventverarbeitung abbricht, andererseits aber auch nicht as er, weil er noch m alten Event arbeitet, das Neue ignoriert.
Sondern eher sich notfalls eine Lsite anlegt mit eingetroffenen Events, die er der Reihe anch verarbeitet, wenn er mit dem Aktuellen fertig ist;
Also nichts verloren geht oder ignoriert wird.
Zitieren
#2
Das Problem ist, das man dir nur schwer helfen kann , weil Add-ons ( extensions ) werden ja nicht so oft programmiert.
Zumindest sind die Themen in den normalen html/css/js/php Foren selten bis hin zu gar nicht zu finden.
Gibt es eigentlich kein Forum, was nur für Extensions/addos/Erweiterungen da ist.

Weil das Javascript, was man im Extension benutzt ist, ja mächtiger als das normale JS auf Webseiten.

Ich habe ja auch schon kleinere Add-ons umgebaut oder selbst was gebaut.
Das waren aber nur kleinere Sachen.

Du weißt ja selbe was man mit Extensions so alles machen kann , und das JS, was da benutzt, wird kennt nicht, jeder , weil man es nie brauch.

Um dir da jetzt weiterhelfen zu können, müsste ich das ganze Add-on selbst installieren und von dort dann weiter arbeiten.
Selbst dann kann ich dir nicht mal sagen, ob ich schnell helfen kann.

Ich muss dringend mal mehr mit Add-on Programmierungen machen.

Falls es ein Forum gibt, für Extensions bei Chrome solltest du vielleicht mal da fragen, weil wie gesagt , die gängigen html,js .... Foren ist das ein seltenes Thema und wüsste jetzt kein, der schon mal selber Extensions programmiert hat oder sich damit genaue auskennt
bernd likes this post
Hier sind alle meine Lösungen aus allen Foren. Ich helfe auch in Facebook-chat
Zitieren
#3
Es gibt, im gegensatz zu Firefox wo es stinknormale ordentliche Foren gibt, bei Chrome nur diese komsichen "google groups" die mehr an 4chan erinnern als an irgendwas Sinnvolles und Strukturiertes.

Da eine Antwort zu kriegen ist so eine Sache...

Aber mein problem hat sich auf sehr dämliche Art gelöst...
Es lag gar nicht an den Events, ich habe nur anch dem falschen Teilstring gesucht -.-

Sache ist die, ich hatte die Extension bei einem Roulette Simulator getestet wo sie auch einwandfrei lief.
Und bei der realen CasinoSeite lief es dnan nicht mehr bzw. völlig random Verhalten.

Tja, nach allen möglichen ideen was die Ursache sein könnte lag es rein an Unterschieden am Responsebody....

Der Simulator zuvor hatte den gesuchten Zielstring mitten im gesamttext, a la "...&winnumber=5&...".

Während es die reale Casinoseite gleich als Erstes im Text stehen hat: "winnumber=5&..."
Und ich hatte in eienr if Bedingung natürlich nach "&winnumber=" gesucht.
Was natürlich nicht gefunden wurde weil im realen Casino shclicht kein & davor vorkommt.
Und daher 95% des Textes, der sich in der if Bedingung befindet , nciht ausgeführt wurde.

Also das korrigiert und auch rebex Kram zugunsten simpler string Suchmethoden gekickt.
und es läuft nun wie fließend Butter :-)
Zitieren


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste