如何处理HTTP响应中的多个Set-Cookie头部
我正在尝试写一个简单的代理服务器,用于某些目的。在这个代理中,我使用httplib来访问远程的网页服务器。但是遇到了一个问题:网页服务器在一次响应中返回了两个Set-Cookie头,而httplib把它们混在一起了。在httplib.HTTPResponse.getheaders()中,这两个Cookie被用逗号连接在一起了[这很奇怪,因为getheaders返回的是一个列表,而不是字典,所以我以为他们是用相同名称的多个头写的]。所以,当我把这个合并后的头发送回客户端时,客户端就搞混了。我该如何在httplib中获取完整的头信息(而不是仅仅通过逗号分割Set-Cookie头)呢?
1 个回答
4
HTTPResponse.getheaders()
这个方法会返回一个包含所有头信息的列表(实际上是我调用了 dict.items()
)。而唯一一个保存原始头信息不变的地方是 HTTPResponse.msg.headers
。