通过Python中的WSGI应用程序发送后的图像失真

时间:2009-06-09 01:55:14

标签: python wsgi

很多时候我通过WSGI发送图像数据(使用wsgiref),图像失真。例如,请检查以下内容:

distorted Google logo
(来源:evanfosmark.com

3 个答案:

答案 0 :(得分:3)

由于您尚未发布代码,因此这是一个正确工作的简单代码 在Windows上使用python 2.5

from wsgiref.simple_server import make_server

def serveImage(environ, start_response):
    status = '200 OK'
    headers = [('Content-type', 'image/png')]
    start_response(status, headers)

    return open("about.png", "rb").read()

httpd = make_server('', 8000, serveImage)
httpd.serve_forever()

可能代替“rb”而使用“r”

答案 1 :(得分:1)

这与\n未正确转换有关。我要感谢Alex Martelli指出我正确的方向。

答案 2 :(得分:0)

也许结果会被截断?尝试wgetcurl直接获取文件,cmp将其提取到原始图像;这应该有助于调试它。除此之外,即使它很简单,也要发布完整的代码和环境细节。