AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Javascript ohne TWebBrowser ausführen
Thema durchsuchen
Ansicht
Themen-Optionen

Javascript ohne TWebBrowser ausführen

Ein Thema von Schwedenbitter · begonnen am 16. Nov 2010 · letzter Beitrag vom 17. Nov 2010
Antwort Antwort
Seite 1 von 3  1 23      
Schwedenbitter

Registriert seit: 22. Mär 2003
Ort: Finsterwalde
622 Beiträge
 
Turbo Delphi für Win32
 
#1

Javascript ohne TWebBrowser ausführen

  Alt 16. Nov 2010, 15:12
Hallo,

ich lade aus meiner TK-Anlage Faxe runter. Hierzu gibt es bereit einen separaten Thread. Das funktioniert mittlerweile Dank Eurer Hilfe sehr gut, schnell und resourcenschonend.

Jetzt stehe ich aber vor dem Problem, dass ich die bereits abgerufenen Faxe löschen muss. In der TK-Anlage wird das über eine Weboberfläche gemacht. Diese wiederum löscht die Daten offenbar mittels Javascript, wobei <A CLASS='list' HREF='javascript:bttnDeleteEntry(3, 512, "77")';> entscheidend sein dürfte:
Code:
<A HREF='/fax/001/11_16_14_39_u_0003.exe'><IMG SRC='/images1/pict_cl_fax.gif' TITLE='Anzeigen (110 kB)' BORDER='0'></A><A HREF='/fax/001/11_16_14_39_u_0003.sff'><IMG SRC='/images1/pict_save.gif' TITLE='Speichern (37 kB)' BORDER='0'></A><A CLASS='list' HREF='javascript:bttnDeleteEntry(3, 512, "77")';><IMG SRC='/images1/pict_del_entry.gif' WIDTH='20' HEIGHT='17' BORDER='0' NAME='' TITLE='Eintrag löschen'></A>
Ich möchte ebenso wie beim Download gern auf TWebBrowser verzichten. Ich habe einige Ansätze gefunden, wie es damit geht.

Gibt es eine Möglichkeit, den Code ohne TWebBrowser auszuführen? Falls ja, bitte ich ausdrücklich um Hinweise.

Danke, Alex
Alex Winzer
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#2

AW: Javascript ohne TWebBrowser ausführen

  Alt 16. Nov 2010, 15:15
Schau mal nach, wie die JavaScript-Methode selbst aussieht. Ich denke fast, dass da mit AJAX gearbeitet wird, die dem Server ein gewisses Kommand zukommen lässt. Ohne die JavaScript-Methode können wir leider nichts anfangen.

--EDIT
Mein Ansatz wäre es nun, zu schauen, wie der Browser mit dem Server kommuniziert und das dann nachzubauen.
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
Schwedenbitter

Registriert seit: 22. Mär 2003
Ort: Finsterwalde
622 Beiträge
 
Turbo Delphi für Win32
 
#3

AW: Javascript ohne TWebBrowser ausführen

  Alt 16. Nov 2010, 15:23
Hallo s.h.a.r.k,

Danke für die Antwort.
... zu schauen, wie der Browser mit dem Server kommuniziert und das dann nachzubauen.
Wie macht man so etwas? Wobei mich grundsätzlich erstmal das Abhören der Kommunikation interessiert. Unter Linux hätte ich da evtl. eine Idee. Aber unter Windows, wo das ganze Szenario spielt, bin ich ratlos.
Alex Winzer
  Mit Zitat antworten Zitat
Benutzerbild von wicht
wicht

Registriert seit: 15. Jan 2006
Ort: Das schöne Enger nahe Bielefeld
809 Beiträge
 
Delphi XE Professional
 
#4

AW: Javascript ohne TWebBrowser ausführen

  Alt 16. Nov 2010, 15:26
Mit Wireshark. Oder (etwas komfortabler wie ich finde) mit Fiddler..
http://streamwriter.org

"I make hits. Not the public. I tell the DJ’s what to play. Understand?"
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#5

AW: Javascript ohne TWebBrowser ausführen

  Alt 16. Nov 2010, 15:36
Schau doch einfach mal im Quellcode nach der JavaScript-Methode. Im Firefox öffnet dir Strg+U den Quellcode der Website. Dort (oder in den Unterdateien) kannst du die JS-Methode finden! Und bzgl. meiner Vermutung bzgl AJAX: Da reicht auf jedenfall die Firebug-Erweiterung für Firefox. Dort gibt es dann einen Tab "Netzwerk", wo man alles sieht, was man brauch. AJAX-Requests werden auch in der Konsole dargestellt, soweit ich weiß.

-- EDIT
Wireshark etc. wäre hier mit Kanonen auf Spatzen geschossen
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
Schwedenbitter

Registriert seit: 22. Mär 2003
Ort: Finsterwalde
622 Beiträge
 
Turbo Delphi für Win32
 
#6

AW: Javascript ohne TWebBrowser ausführen

  Alt 16. Nov 2010, 16:15
Danke. Ich habe jetzt Firebug installiert. Wie muss ich das benutzen?

Ich habe gemäß Deiner Anleitung den Tab "Netzwerk" gewählt. Dort gibt es nun die SubTabs "Alle | HTML | CSS | JS | XHR | Grafiken | Flash". Ich bin dann zu "JS" gewechselt und habe auf "Eintrag löschen" geklickt. Es wurde aber nichts angezeigt, was ich verwursten könnte.
Was mache ich verkehrt?
Alex Winzer
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#7

AW: Javascript ohne TWebBrowser ausführen

  Alt 16. Nov 2010, 16:21
Wenn das Netzwerk-Modul aktiviert ist, dann siehst du wie die Kommunikation zwischen Browser und Server abläuft, also welche Anfragen an den Server gehen und wie diese beantwortet werden. Nun navigiere im Browser eben auf die Seite und drücke den Löschen-Button. Wenn ein Seiten-Reload erfolgt, dann wird wohl nur ein GET-Request an den Server geschickt. Wenn kein Seiten-Reload erfolgt, dann ists wohl ein AJAX-Request.

Klickst du auf das Plus vor dem Delete-Request, dann kannst du einsehen, welche Daten an den Server geschickt werden. Und das kannst du nachbauen.

-- EDIT
Wenn Jabber oder ICQ hast, dann schick mir einfach eine PN, dann können wir das auch da klären.
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
Schwedenbitter

Registriert seit: 22. Mär 2003
Ort: Finsterwalde
622 Beiträge
 
Turbo Delphi für Win32
 
#8

AW: Javascript ohne TWebBrowser ausführen

  Alt 16. Nov 2010, 17:12
Wenn ein Seiten-Reload erfolgt, dann wird wohl nur ein GET-Request an den Server geschickt. Wenn kein Seiten-Reload erfolgt, dann ists wohl ein AJAX-Request.
Es sieht nicht danach aus. Denn die Seite wird aller 3 Sek. neu geladen und das sehe ich im Reiter "HTML". Insoweit besteht auch das Problem, dass der von mir gewählte Eintrag bei der Aktualisierung den Focus verliert es sehr schnell unübersichtlich wird.

Klickst du auf das Plus vor dem Delete-Request, dann kannst du einsehen, welche Daten an den Server geschickt werden. Und das kannst du nachbauen.
Ich habe mal die Einträge als txt-Dateien angehängt. Ich kann allerdings nicht sehen, inwiefern ich da etwas benutzen könnte.

[EDIT]Ein Fax habe ich noch zum Löschen. Dann muss ich erst wieder warten, bis etwas bei uns eingeht [/EDIT]

Jabber oder ICQ habe ich nicht und möchte ich auch nicht unbedint wegen dieser Sache hier installieren.
Angehängte Dateien
Dateityp: zip Ausgabe_Firebug.zip (2,7 KB, 9x aufgerufen)
Alex Winzer
  Mit Zitat antworten Zitat
Benutzerbild von wicht
wicht

Registriert seit: 15. Jan 2006
Ort: Das schöne Enger nahe Bielefeld
809 Beiträge
 
Delphi XE Professional
 
#9

AW: Javascript ohne TWebBrowser ausführen

  Alt 16. Nov 2010, 17:44
Hinter dem "Eintrag löschen"-Knopf steht die JS-Funktion bttnDeleteEntry. Diese ist unten definiert in 02_Antwort.txt, die URL, die da aufgerufen wird, wäre dann "/vphone/vp-list-mailin.asp?mode=11&entry='+entry+'&rnr='+rnr+'&typ e='+type+'&read=" - dort müssen dann drei Parameter rein.. die müsstest du noch mitgeben bzw. herausfinden, was sie bedeuten

HTH
http://streamwriter.org

"I make hits. Not the public. I tell the DJ’s what to play. Understand?"
  Mit Zitat antworten Zitat
Schwedenbitter

Registriert seit: 22. Mär 2003
Ort: Finsterwalde
622 Beiträge
 
Turbo Delphi für Win32
 
#10

AW: Javascript ohne TWebBrowser ausführen

  Alt 16. Nov 2010, 20:41
... dort müssen dann drei Parameter rein.. die müsstest du noch mitgeben bzw. herausfinden, was sie bedeuten
Nichts leichter als das. Denn die zu übergebenden Parameter stehen ja im html-Code (Siehe mein erster Post):
Code:
<A CLASS='list' HREF='javascript:bttnDeleteEntry(3, 512, "77")';> ... </A>
Wobei 3 für den Eintrag Nr. 3 steht, ich zur 512 keine Ahnung habe und "77" für Faxe steht. Die Anlage verwaltet auch Telefongespräche, Nachrichten etc. pp.

Wenn ich Dein Post also richtig verstehe, bedeutet das, dass ich Bezug nehmend auf mein obiges Beispiel "nur"
Code:
http://192.168.1.2/vphone/vp-list-mailin.asp?mode=11&entry=3&rnr=512&typ e="77"&read="
an den Server absetzen muss und der Eintrag ist gelöscht? Wie sende ich das ohne TWebBrowser? Muss ich da die '' bzw. "" mit angeben oder reicht das auch so?

Gruß & Dank, Alex
Alex Winzer
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:47 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz