2009-10-30 5 views
4

J'essaie d'écrire un serveur proxy simple pour une raison quelconque. J'utilise httplib pour accéder au serveur web distant. Mais il y a un problème: le serveur web renvoie deux en-têtes Set-Cookie dans une réponse, et httplib les combine ensemble dans httplib.HTTPResponse.getheaders(), joignant efficacement les cookies avec la virgule [qui est étrange, parce que getheaders retourne un LIST, pas DICT, donc je pensais qu'ils l'ont écrit avec plusieurs en-têtes du même nom). Ainsi, lorsque j'envoie cet en-tête rejoint au client, il confond le client. Comment puis-je obtenir la liste complète des en-têtes dans httplib (sans simplement diviser l'en-tête Set-Cookie sur les virgules)?Comment gérer plusieurs en-tête Set-Cookie dans la réponse HTTP

Répondre

4

HTTPResponse.getheaders() renvoie une liste d'en-têtes combinés (en réalité mon appel dict.items()). Le seul endroit où les en-têtes entrants sont stockés intacts est HTTPResponse.msg.headers.