|
You last visited: Today at 03:02
Advertisement
JavaScript Return Value im Quelltext
Discussion on JavaScript Return Value im Quelltext within the Web Development forum part of the Coders Den category.
12/30/2015, 01:53
|
#1
|
elite*gold: 0
Join Date: Apr 2010
Posts: 9,696
Received Thanks: 1,811
|
JavaScript Return Value im Quelltext
Gibt es eine Möglichkeit den Wert einer JavaScript Funktion im Seitenquelltext anzeigen zu lassen? Die Funktion generiert einen Wert, diesen gebe ich im Browser per document.write(var); aus. Wenn ich jedoch auf Seitenquelltext anzeigen gehe, sehe ich dort lediglich die JavaScript Funktion, den generierten Wert jedoch nicht.
|
|
|
12/30/2015, 02:02
|
#2
|
dotCom
elite*gold: 9842
Join Date: Mar 2009
Posts: 16,843
Received Thanks: 4,675
|
Wenn du im Quelltext meinst, dass man diese sehen soll versuche es mal so.
Code:
<div id="Result">
</div>
<script>
var wert = "<b>Dein Wort</b>";
document.getElementById('Result').innerHTML += wert;
</script>
|
|
|
12/30/2015, 02:25
|
#3
|
elite*gold: 0
Join Date: Apr 2010
Posts: 9,696
Received Thanks: 1,811
|
Hm also entweder bin ich zu blöd oder es funktioniert einfach nicht. Der Wert wird weiterhin nicht im Quelltext angezeigt..
|
|
|
12/30/2015, 02:31
|
#4
|
elite*gold: 0
Join Date: Apr 2011
Posts: 11,117
Received Thanks: 2,436
|
Quote:
Originally Posted by Kraizy
Hm also entweder bin ich zu blöd oder es funktioniert einfach nicht. Der Wert wird weiterhin nicht im Quelltext angezeigt..
|
Wenn ich es richtig verstehe willst du die Value im Quelltext sehen die im Javascript gesetzt wird ?Wenn ja ist es logischerweise nicht möglich, da beim Quelltext angucken die "Roh" Datei angezeigt wird und das Javascript noch nicht ausgeführt wurde.
|
|
|
12/30/2015, 02:32
|
#5
|
elite*gold: 0
Join Date: Apr 2010
Posts: 9,696
Received Thanks: 1,811
|
Gibt es da keine andere Möglichkeit?
Um mein Vorhaben mal etwas genauer zu erkären: Ich arbeite zurzeit an einem Bot für eine gewisse Seite. Dort wird beim Login eine JavaScript Datei ausgeführt, die einen Wert generiert. Dieser wird dann im POST Request - neben ID & PW - mitübergeben. Anfangs hatte ich eigentlich vor, die Funktion in .NET nachzubauen, was auch gut funktioniert hat - bis ich dann gemerkt habe, dass sich die JavaScript Funktion bei jedem neuen Loginversuch geringfügig ändert. Sprich die Reihenfolge, wie der Wert generiert wird ändert sich jedesmal zufällig und somit ist z.B. der unterste Teil der Funktion bei einem neuen Login z.B. ganz oben, der erste Teil dann wiederum z.B. irgendwo in der Mitte.
Deswegen habe ich mir überlegt, einfach den JavaScript Link zu holen, ausführen zu lassen und dann aus dem Quelltext den Wert welcher returned wird auszulesen (per HttpWebRequest). Bloß ist nun mein Problem wie gesagt, dass der Http Response lediglich die Funktion selbst als Quelltext liefert, anstatt den Wert.
Wie funktioniert das denn in der Chrome Dev Console?
Hab mir nun mal zum Test ne .html Datei erstellt und geöffnet. Angezeigt wird im Browser nun der generierte Wert. Wenn ich nun auf Rechtsklick -> Seitenquelltext anzeigen gehe, sehe ich lediglich den Inhalt der Datei - die JavaScript Funktion selbst. Sonst nichts. Somit auch keinen generierten Wert.
Wenn ich nun aber mit F12 die Dev Console in Chrome öffne und dann auf Elements gehe, dann wird mir der komplette Inhalt angezeigt - die JavaScript Funktion, sowie im Body der generierte Wert:
|
|
|
12/30/2015, 02:41
|
#6
|
elite*gold: 0
Join Date: Apr 2011
Posts: 11,117
Received Thanks: 2,436
|
Quote:
Originally Posted by Kraizy
Gibt es da keine andere Möglichkeit?
Um mein Vorhaben mal etwas genauer zu erkären: Ich arbeite zurzeit an einem Bot für eine gewisse Seite. Dort wird beim Login eine JavaScript Datei ausgeführt, die einen Wert generiert. Dieser wird dann im POST Request - neben ID & PW - mitübergeben. Anfangs hatte ich eigentlich vor, die Funktion in .NET nachzubauen, was auch gut funktioniert hat - bis ich dann gemerkt habe, dass sich die JavaScript Funktion bei jedem neuen Loginversuch geringfügig ändert. Sprich die Reihenfolge, wie der Wert generiert wird ändert sich jedesmal zufällig und somit ist z.B. der unterste Teil der Funktion bei einem neuen Login z.B. ganz oben, der erste Teil dann wiederum z.B. irgendwo in der Mitte.
Deswegen habe ich mir überlegt, einfach den JavaScript Link zu holen, ausführen zu lassen und dann aus dem Quelltext den Wert welcher returned wird auszulesen (per HttpWebRequest). Bloß ist nun mein Problem wie gesagt, dass der Http Response lediglich die Funktion selbst als Quelltext liefert, anstatt den Wert.
|
Den längeren Text habe ich nicht zu 100% verstanden...Wenn du jedoch den Javascript teil hast dann bau dir eine Function (Serverseitig) die das Javascript ausführt und den Result zurück gibt.
Sollte mit NodeJs gehen (Weiß ich aber nicht zu 100%).
€:Wenn ich es richtig gesehen habe geht es auch mit PHP selber
|
|
|
12/30/2015, 02:45
|
#7
|
elite*gold: 0
Join Date: Apr 2010
Posts: 9,696
Received Thanks: 1,811
|
Quote:
Originally Posted by .ƒaℓsє.
Den längeren Text habe ich nicht zu 100% verstanden...Wenn du jedoch den Javascript teil hast dann bau dir eine Function (Serverseitig) die das Javascript ausführt und den Result zurück gibt.
Sollte mit NodeJs gehen (Weiß ich aber nicht zu 100%).
€:Wenn ich es richtig gesehen habe geht es auch mit PHP selber 
|
Hab noch nen Bild zu meinem Beitrag dazu gepostet.
Wie genau würde das mit PHP funktionieren?
|
|
|
12/30/2015, 02:47
|
#8
|
elite*gold: 0
Join Date: Apr 2011
Posts: 11,117
Received Thanks: 2,436
|
Quote:
Originally Posted by Kraizy
Hab noch nen Bild zu meinem Beitrag dazu gepostet.
Wie genau würde das mit PHP funktionieren?
|
Wie genau es in PHP geht müsste ich auch gucken  In der Dev Tools wird die AKTUELLE Seite angezeigt und somit auch das ausgeführte Javascript, evtl gibt es in .net ja auch eine Methode die "fertige" Seite zu bekommen.
€: Gib mir mal den Javascript teil dann teste ich mal php  €²: Schau dir mal V8Js an
|
|
|
12/30/2015, 02:59
|
#9
|
elite*gold: 0
Join Date: Apr 2010
Posts: 9,696
Received Thanks: 1,811
|
Bin jetz leider am Handy, hab die JS Datei grad nicht zur Hand. Wobei es aber doch glaub ich sowieso kein Unterschied macht, obs nun die richtige function ist oder ne Hello World function spielt keine Rolle. Mir geht es ja grade einfach nur darum, den Wert, der von JS generiert bzw returned wird, so auszugeben, dass man die irgendwo auslesen kann per HttpRequest.
|
|
|
12/30/2015, 03:07
|
#10
|
elite*gold: 0
Join Date: Apr 2011
Posts: 11,117
Received Thanks: 2,436
|
Doch eigentlich fand ich das Javascript grade interessant..Normal solltest du das ganze doch in PHP nachbauen können  ?
|
|
|
12/30/2015, 04:38
|
#11
|
elite*gold: 273
Join Date: Sep 2010
Posts: 1,831
Received Thanks: 786
|
Quote:
Originally Posted by Kraizy
Gibt es da keine andere Möglichkeit?
Um mein Vorhaben mal etwas genauer zu erkären: Ich arbeite zurzeit an einem Bot für eine gewisse Seite. Dort wird beim Login eine JavaScript Datei ausgeführt, die einen Wert generiert. [...]
|
Du könntest auch einfach den ganzen Loginvorgang mit irgendeinem Headless-Browser durchführen und dir danach die Cookies holen und diese weiterverwenden. Dann brauchst du dir überhaupt keine Gedanken zu dem ganzen Javascript machen.
Diese Lösung ist natürlich nur geeignet, wenn Performance beim Login selber unwichtig ist.
|
|
|
12/30/2015, 12:16
|
#12
|
elite*gold: 77
Join Date: May 2008
Posts: 5,430
Received Thanks: 5,878
|
Quote:
Originally Posted by Kraizy
Gibt es da keine andere Möglichkeit?
Um mein Vorhaben mal etwas genauer zu erkären: Ich arbeite zurzeit an einem Bot für eine gewisse Seite. Dort wird beim Login eine JavaScript Datei ausgeführt, die einen Wert generiert. Dieser wird dann im POST Request - neben ID & PW - mitübergeben. Anfangs hatte ich eigentlich vor, die Funktion in .NET nachzubauen, was auch gut funktioniert hat - bis ich dann gemerkt habe, dass sich die JavaScript Funktion bei jedem neuen Loginversuch geringfügig ändert. Sprich die Reihenfolge, wie der Wert generiert wird ändert sich jedesmal zufällig und somit ist z.B. der unterste Teil der Funktion bei einem neuen Login z.B. ganz oben, der erste Teil dann wiederum z.B. irgendwo in der Mitte.
Deswegen habe ich mir überlegt, einfach den JavaScript Link zu holen, ausführen zu lassen und dann aus dem Quelltext den Wert welcher returned wird auszulesen (per HttpWebRequest). Bloß ist nun mein Problem wie gesagt, dass der Http Response lediglich die Funktion selbst als Quelltext liefert, anstatt den Wert.
Wie funktioniert das denn in der Chrome Dev Console?
Hab mir nun mal zum Test ne .html Datei erstellt und geöffnet. Angezeigt wird im Browser nun der generierte Wert. Wenn ich nun auf Rechtsklick -> Seitenquelltext anzeigen gehe, sehe ich lediglich den Inhalt der Datei - die JavaScript Funktion selbst. Sonst nichts. Somit auch keinen generierten Wert.
Wenn ich nun aber mit F12 die Dev Console in Chrome öffne und dann auf Elements gehe, dann wird mir der komplette Inhalt angezeigt - die JavaScript Funktion, sowie im Body der generierte Wert:
|
Nö, keine Chance mit "einfachen" Methoden.
Siehe dazu auch:
Quote:
Originally Posted by .ƒaℓsє.
Wenn ich es richtig verstehe willst du die Value im Quelltext sehen die im Javascript gesetzt wird ?Wenn ja ist es logischerweise nicht möglich, da beim Quelltext angucken die "Roh" Datei angezeigt wird und das Javascript noch nicht ausgeführt wurde.
|
Eine mögliche Lösung wäre:
Quote:
Originally Posted by .SkyneT.
Du könntest auch einfach den ganzen Loginvorgang mit irgendeinem Headless-Browser durchführen und dir danach die Cookies holen und diese weiterverwenden. Dann brauchst du dir überhaupt keine Gedanken zu dem ganzen Javascript machen.
Diese Lösung ist natürlich nur geeignet, wenn Performance beim Login selber unwichtig ist.
|
Wobei ich aber Lösung #2 vorziehen würde:
Bau dir einen javascript Teilinterpreter oder hol dir einen Open-Source Javascript Interpreter und hau den drauf, bei ersterem lernst du mehr, zweiteres geht deutlich schneller (vom Aufwand her nicht von der Ausführung).
Edit:
Z.B. Den da:  oder eben das genannte V8js.
|
|
|
12/30/2015, 12:52
|
#13
|
elite*gold: 0
Join Date: Apr 2011
Posts: 11,117
Received Thanks: 2,436
|
Quote:
Originally Posted by .SkyneT.
Du könntest auch einfach den ganzen Loginvorgang mit irgendeinem Headless-Browser durchführen und dir danach die Cookies holen und diese weiterverwenden. Dann brauchst du dir überhaupt keine Gedanken zu dem ganzen Javascript machen.
Diese Lösung ist natürlich nur geeignet, wenn Performance beim Login selber unwichtig ist.
|
Wenn ich mich recht erinnere hat kraizy schon mehrere Programme geschrieben wo ein Login verfahren von nöten ist, somit hatte sie auch Umgang mit Cookies.Ich gehe davon aus das das Javascript von nöten ist, sonst hätte kraizy schon cookies verwendet.
|
|
|
12/30/2015, 19:12
|
#14
|
elite*gold: 0
Join Date: Sep 2014
Posts: 34
Received Thanks: 13
|
Quote:
Originally Posted by .ƒaℓsє.
Wenn ich mich recht erinnere hat kraizy schon mehrere Programme geschrieben wo ein Login verfahren von nöten ist, somit hatte sie auch Umgang mit Cookies.Ich gehe davon aus das das Javascript von nöten ist, sonst hätte kraizy schon cookies verwendet.
|
Javascript kann (mal von node.js abgesehen) unter keinen Umständen
irgendeinen Einfluss auf den Loginprozess haben. Die Javascript Datei aus
welchem der OP einen Wert auslesen möchte ist im Endeffekt auch nichts
anderes als ein Wert der aus dem Backend generiert wird, um beim
gewünschten Request diesen generierten Wert mitzugeben. Die zufällig
generierte Javascript Funktion die der OP hier erwähnt hat ist nichts anderes als
eine Methode um die Lesbarkeit des Wertes zu erschweren.
Quote:
|
Bau dir einen javascript Teilinterpreter oder hol dir einen Open-Source Javascript Interpreter und hau den drauf, bei ersterem lernst du mehr, zweiteres geht deutlich schneller (vom Aufwand her nicht von der Ausführung).
|
Abgesehen davon das kein einfacherer Weg daran vorbeiführt, wäre dies von
Anfang an wohl die Methode mit dem geringeren Arbeitsaufwand gewesen
als die JS Funktion von vorneherein komplett nach zuschreiben
|
|
|
12/30/2015, 21:03
|
#15
|
elite*gold: 0
Join Date: Apr 2011
Posts: 11,117
Received Thanks: 2,436
|
Quote:
Originally Posted by vinnce
Javascript kann (mal von node.js abgesehen) unter keinen Umständen
irgendeinen Einfluss auf den Loginprozess haben. Die Javascript Datei aus
welchem der OP einen Wert auslesen möchte ist im Endeffekt auch nichts
anderes als ein Wert der aus dem Backend generiert wird, um beim
gewünschten Request diesen generierten Wert mitzugeben. Die zufällig
generierte Javascript Funktion die der OP hier erwähnt hat ist nichts anderes als
eine Methode um die Lesbarkeit des Wertes zu erschweren.
|
Auf irgendeiner weiße ist die Value ja scheinbar wichtig beim Login sonst würde der TE ja einfach Cookies nutzen.
Sei es das die Value im Php dann mit einer Function geprüft wird (z.b die Value generiert durch Uhrzeit o.ä.).
Daher wollte ich den Code auch gerne sehen.
|
|
|
 |
|
Similar Threads
|
TicTacToe mit Quelltext :)
09/21/2013 - Coding Releases - 8 Replies
Ich wollte euch teilhaben lassen an meinem viel zu kompliziert geschriebenem Tic Tac Toe. Ihr könnt mir ja bewertungen in den Kommentaren lassen.
Bitte schreibt nicht, dass der code viel zu aufwändig ist! Das haben mir schon genug Leute gesagt :) Geschrieben mit VB.net
|
Infos aus Quelltext
07/02/2012 - General Coding - 1 Replies
hi,
ich habe mal eine Frage .
Und zwar :
Fort Laredo libre: Rocky Mountain Fair vs Laredo
Hier ist ein Beispiel.
Am Anfang ist Städte ausgewählt, da müsst ihr auf Spieler klicken !!
Die Tabelle möchte ich ausleden.
Das klappt auch soweit, bis auf die vorletzte Spalte og.
Den Rest kann ich leicht auslesen, da im Quelltext folgender Code zu finden ist :
|
Exe in einen Quelltext -.-*????!!??
04/01/2012 - General Coding - 3 Replies
Hallo,
habe an einem programm gearbeitet & nun nur noch die exe.
Ich habe ein paar Bugs festgestellt & würde sie gerne beheben.
Gibt es eine möglichkeit die exe zurück in einen quelltext zu convertieren.
Bitte brauche hilfe sonst ist das Programm nutzlos.
Coded with vb2010
MFG
|
Quelltext problem
07/30/2011 - AutoIt - 2 Replies
Hi,
wie kann ich am besten die Gameapi aus diesem Code auslesen?
<tr class="instanceRow existingInstance"...
|
quelltext
05/16/2009 - Browsergames - 2 Replies
hey
hab mal ne frage und zwar
geht es nicht einfach mit quelltext(mit opera) sich geld oder flaschen zu geben?
für was dan die ganzen bots und so ...xD
|
All times are GMT +1. The time now is 03:02.
|
|