Seite 1 von 1

werwechslung von firefox 2 zwischen POST und GET??

Verfasst: Montag 25. Dezember 2006, 15:26
von Costi
??
ich dachte bei POST requests werden die parameter immer ganz unten mitgeliefert?
aber kugt euch die ausgabe meiens scripts an, ist dies nach HTTP so richtig?

Code: Alles auswählen

POST /?login=r00t&pwd=pwd&action=edit HTTP/1.1
Host: 127.0.0.1
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1) Gecko/20060601 
 <ein paar zeilen weggeschniten>
Content-Type: applicat
Traceback (most recent call last):
  File "/home/hmm/Desktop/remin/main.py", line 182, in ?
    handleClient(conn, addr[0])
  File "/home/hmm/Desktop/remin/main.py", line 55, in handleClient
    query = resp.split("\r\n\r\n")[1]
IndexError: list index out of range

Verfasst: Montag 25. Dezember 2006, 15:51
von BlackJack
Ich kann da jetzt nichts falsches entdecken. Jedenfalls nicht bis zu dem Punkt wie die Daten empfangen wurden. Das scheint ja mittendrin aufzuhören. Dir ist klar das ein `recv(1000)` auch weniger als 1000 Bytes empfangen kann? Theoretisch wäre es sogar denkbar, dass Du 100 Bytes losschickst und auf der Empfängerseite 100 mal `recv(1000)` aufrufen musst, bis alles komplett ist.

Verfasst: Montag 25. Dezember 2006, 16:06
von Costi
ne ich meinet jetzt dass:

Code: Alles auswählen

POST /?login=r00t&pwd=pwd&action=edit HTTP/1.1 
muetse das "login=r00t&pwd=pwd&action=edit" nicht mit eien "\r\n" abgetrennt an letyter stelle kommen?
komischer weise tut er das jetyt auch, bei diesen request tat er es aber nicht
aber egal wir wollen keien gespenster jagen

Verfasst: Samstag 30. Dezember 2006, 07:28
von Y0Gi
Dieser POST-Request übergibt in der Tat die Parameter fälschlicherweise in der URL, was GET normalerweise tut.

Soweit ich mich entsinne gibt es im Modul `urllib2` eine Klasse `Request`, die die Werte (als dict?) entgegennimmt und POST-Requests so vereinfacht.