Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > AutoIt
You last visited: Today at 12:37

  • Please register to post and access all features, it's quick, easy and FREE!

 

WinHttp Hilfe

Reply
 
Old   #1
 
elite*gold: 84
The Black Market: 100/0/0
Join Date: Nov 2012
Posts: 5,220
Received Thanks: 138
WinHttp Hilfe

Hey, ich möchte folgendes Paket:

Code:
http://website.de/unterseite

POST /unterseite HTTP/1.1
Host: website.de
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:27.0) Gecko/20100101 Firefox/27.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Referer: http://website.de/unterseite
Cookie: _pk_ref.25.75ae=%5B%22%22%2C%22%22%2C1396109937%2C%22http%3A%2F%2Fwww.bing.com%2Fsearch%3Fq%3D1jux%26pc%3Dconduit%26ptag%3DA3FC30AB4619B4474B0F%26form%3DCONBDF%26conlogo%3DCT3210127%22%5D; _pk_id.25.75ae=28bc4c2c1a7f9719.1388423609.22.1396109945.1396049226.; __utma=77573525.1016976029.1388423609.1391354035.1391783666.16;(undsoweiter...)
Connection: keep-alive
Content-Type: multipart/form-data; boundary=---------------------------einesehrlangezahl
Content-Length: 1152
-----------------------------einesehrlangezahl
Content-Disposition: form-data; name="einname"

einwert
-----------------------------einesehrlangezahl
Content-Disposition: form-data; name="einname"

einwert
-----------------------------einesehrlangezahl
Content-Disposition: form-data; name="einname[]"

einwert
-----------------------------einesehrlangezahl
Content-Disposition: form-data; name="einname[]"

einwert
-----------------------------einesehrlangezahl
Content-Disposition: form-data; name="einname"


-----------------------------19468627913187
Content-Disposition: form-data; name="einname"

einwert
-----------------------------einesehrlangezahl
Content-Disposition: form-data; name="einname"

keinwert
-----------------------------einesehrlangezahl
Content-Disposition: form-data; name="einname"

einwert
-----------------------------einesehrlangezahl
Content-Disposition: form-data; name="einname"

einwert
-----------------------------einesehrlangezahl
Content-Disposition: form-data; name="lang"

einwert
-----------------------------einesehrlangezahl--

HTTP/1.1 302 Found
Server: nginx
Date: Sun, 30 Mar 2014 17:59:56 GMT
Content-Type: text/html
Content-Length: 5023
Connection: keep-alive
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Location: http://website.de/unterordner/unterseite
X-Powered-By: PleskLin
Vary: Accept-Encoding
Content-Encoding: gzip
In eine _WinHttpSimpleRequest() packen, mein 'befehl dafür sah jetzt so aus:
Code:
			   $sHTML = _WinHTTPSimpleRequest($Connect,"POST","unterseite", "http://website.de/unterseite", $Paket)
$Paket ist hierbei die Variable für das Paket, nur geht dieser Befehl nicht.
Was mache ich falsch? Wie kann man das Paket korrekt einbinden?



.simple' is offline  
Old   #2
 
elite*gold: 60
Join Date: Aug 2009
Posts: 2,256
Received Thanks: 812
"einesehrlangezahl" - hast wohl lange mit HTTP Packets gearbeitet.
Die Boundaries werden von WinHttp eigentlich automatisch generiert und hier muss das ohne SimpleRequest glaube ich passieren.


alpines is offline  
Thanks
1 User
Old   #3
 
elite*gold: 84
The Black Market: 100/0/0
Join Date: Nov 2012
Posts: 5,220
Received Thanks: 138
Erstmal danke für deine Antwort,
aber wie soll ich das denn ohne SimpleRequest machen?
(Arbeitete noch nicht lange mit WinHttp)
.simple' is offline  
Old   #4
 
elite*gold: 60
Join Date: Aug 2009
Posts: 2,256
Received Thanks: 812
Tutorials anschauen, es gibt hier auch ein Tutorial mit WinHttp für VB mit den Boundaries, aber du kannst das übernehmen.


alpines is offline  
Thanks
1 User
Old   #5
 
elite*gold: 0
Join Date: May 2008
Posts: 4,849
Received Thanks: 4,780
Hey .simple'
alpines erzählt hier mal wieder (wie sehr oft) total den Quatsch.
Natürlich musst/kannst du das mit _WinHTTPSimpleRequest machen.
Aber zuerst solltest du dir einmal grob anschauen was ein multipart Post-Request überhaupt ist:

Einfach einmal durchlesen und verstehen, dann solltest du zumindest grob wissen was multipart ist und wofür man es braucht bzw. wie es sich von anderen Requests unterscheidet.

Anschließend dürfte dir nur noch das:
"-----------------------------einesehrlangezahl"
Kopfzerbrechen bringen, ist aber auch nicht schlimm.
Dieser komische Text trennt lediglich die Sektions voneinander und die "einesehrlangezahl"-Zahl, ist lediglich irgendetwas eindeutiges, das zum Trennen benutzt werden kann. FireFox generiert zufällige Zahlen dafür und Opera nimmt, wenn ich mich recht erinnere, einfach einen Timestamp.

Auch die "-" vor der Zahl sind nur bedingt wichtig, man kann sie ziemlich reduzieren (bis auf 2 glaub ich, weiß ich nicht mehr auswendig am besten du googlest mal), wenn man will.

Du hast beim bearbeiten deines Packets oben aber einen GEWALTIGEN Fehler gemacht, denn die Sektiontrennungen stimmen nicht exakt mit "boundary=---------------------------einesehrlangezahl" überein, irgendwo sind mehr Minuse als an anderen Stellen bzw. weniger. Das musst du noch einmal genau vergleichen, ich weiß auch hier nicht mehr exakt wo/wie das war, aber mit etwas analysieren dürfte man das schnell rausfinden.

Anschließend, wenn du weißt wie ein Packet aussieht, musst du nur noch den Header richtig setzen und danach eben $POST richtig zusammenbauen.
Shadow992 is offline  
Thanks
1 User
Old   #6
 
elite*gold: 60
Join Date: Aug 2009
Posts: 2,256
Received Thanks: 812
Tut mir leid falls ich in WinHttp nicht bewandert sein sollte, aber es ist auch ohne SimpleRequest möglich. Dazu gibt es ein Tutorial hier in epvp und das kann man übernehmen.
alpines is offline  
Thanks
1 User
Old   #7
 
elite*gold: 0
Join Date: May 2008
Posts: 4,849
Received Thanks: 4,780
Quote:
Originally Posted by alpines View Post
Tut mir leid falls ich in WinHttp nicht bewandert sein sollte
Braucht dir nicht Leid tun, jeder hat woanders seine Stärken, aber wenn man weiß, dass man sich kaum auskennt auf diesem Gebiet, kann man sich eine möglicherweise sehr falsche Antwort auch verkneifen.
Quote:
Originally Posted by alpines View Post
, aber es ist auch ohne SimpleRequest möglich. Dazu gibt es ein Tutorial hier in epvp und das kann man übernehmen.
Klar man kann es auch direkt per TCPOpen/Send machen, aber wieso dieser Umweg, wenn es schon eine Funktion gibt, die alles erleichtert?

Du kannst auch Spiele in Assembler programmieren, aber wieso dieser Umweg, wenn es schon Hochsprache gibt, die von der Geschwindigkeit her fast genau so schnellen ASM-Code generieren wie manuelles ASM schreiben?

Klar kannst du alles auch komplizierter machen und das Rad 100x neu erfinden, aber wieso? Wenn man nicht verstehen will wie etwas abläuft, ist es auch nicht nötig sich mit allen Kleinigkeiten zu beschäftigen.
Shadow992 is offline  
Thanks
1 User
Old   #8
 
elite*gold: 60
Join Date: Aug 2009
Posts: 2,256
Received Thanks: 812
Ich meinte damit nicht die TCP Funktionen, sondern WinHttp. Das bietet auch andere Wege das zu lösen.
alpines is offline  
Thanks
1 User
Old   #9
 
elite*gold: 0
Join Date: May 2008
Posts: 4,849
Received Thanks: 4,780
Quote:
Originally Posted by alpines View Post
Ich meinte damit nicht die TCP Funktionen, sondern WinHttp. Das bietet auch andere Wege das zu lösen.
Das ist aber in der von ihm verwendeten UDF nicht dabei, man könnte zwar, wenn es um eine Form geht und das Request keinerlei Javascript generierte Werte besitzt auch "_WinHttpSimpleFormFill" nehmen, da ich das aber bezweifle, ist der Weg über ein normales POST-Request wohl am einfachsten.
Shadow992 is offline  
Thanks
1 User
Old   #10
 
elite*gold: 84
The Black Market: 100/0/0
Join Date: Nov 2012
Posts: 5,220
Received Thanks: 138
Danke erstmal für die Antworten
Ich habe es mittlerweile auch so hinbekommen, habe mich bisschen belesen was die Boundaries angeht und habe das Paket dann auch so hingeschustert bekommen, trotzdem Danke

MfG .simple'


.simple' is offline  
Reply



« Previous Thread | Next Thread »

Similar Threads
Winhttp Stringbetween
Hey, ich möchte vom quelltext die value rausnehmen. Jedoch gibt es mehrere values diese auch unterschiedlich sind. Darum brauche ich den teil vor...
3 Replies - AutoIt
[S] Hilfe bei WinHttp
Hi Leutz hab die letzten Tage mir die Tut´s hier angeschaut und mal drauf los geschrieben dabei raus gekommen ist das. ...
13 Replies - AutoIt
WinHTTP Frage
Hallo leute habe eine Frage wie kan ich wen ich mit WinHTTP eingeloggt habe auf andere Seiten weiter navigieren mfg
5 Replies - AutoIt
Help with winhttp
Hi there, I'm trying to learn winhttp functions from winhttp udf. I would like to automate facebook forms with it. but i don't know how to get...
5 Replies - AutoIt
WINHTTP.dLL
Hilfe Ich da ich heute Formatiert habe und alles neu drauf laden musste usw..... hab ich nun ein neues problem MSN will nicht Starten begründung...
2 Replies - Technical Support



All times are GMT +1. The time now is 12:37.


Powered by vBulletin®
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Abuse
Copyright ©2017 elitepvpers All Rights Reserved.