fin de fichier en python (?)

Le
Kevin Denis
Bonjour,

je regarde mitmproxy, écrit en python, et j'essaye de le modifier un peu.
Pour faire bref, il s'agit d'un proxy. mimtproxy charge une page web du
serveur, la conserve en mémoire et la renvoie au client. Simple.

Dans le code, j'ai ça:
def send_response(self, response):
self.wfile.write(response.assemble())
self.wfile.flush()

Si j'ajoute ça:
def send_response(self, response):
trace = open('/tmp/fichier.txt','w')
trace.write(response.assemble())
trace.close()
self.wfile.write(response.assemble())
self.wfile.flush()

Alors j'ai dans fichier.txt le contenu de ma page web (en-tête + data).
Normal.
Je veux modifier alors la réponse envoyée au client. Mon premier
essai est de faire:

def send_response(self, response):
self.wfile.write("HTTP/1.0 200 OKContent-type: text/html<html>Yes It works!</html>")
self.wfile.flush()

Mais curieusement, ça ne fonctionne pas. Le navigateur tourne dans le
vide.

Et encore plus curieux, si j'arrête le programme mitmproxy, alors
le 'Yes it works' s'affiche dans le navigateur.

Ce qui m'amène à penser qu'il doit manquer quelque chose à self.wfile.write
mais quoi? Une fin de fichier? Un caractère spécial? Comment le trouver?

Merci
--
Kevin
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Kevin Denis
Le #23494451
Le 23-06-2011, Kevin Denis
def send_response(self, response):
self.wfile.write("HTTP/1.0 200 OKrnContent-type: text/htmlrnrn<html>Yes It works!</html>")
self.wfile.flush()

Mais curieusement, ça ne fonctionne pas. Le navigateur tourne dans le
vide.



Bon avec un
self.wfile.close()
juste après, ça fonctionne.
--
Kevin
Publicité
Poster une réponse
Anonyme