Искажение изображения после отправки через приложение WSGI в Python - PullRequest
1 голос
/ 09 июня 2009

В большинстве случаев, когда я отправляю данные изображения через WSGI (используя wsgiref), изображение получается искаженным. В качестве примера рассмотрим следующее:

distorted Google logo
(источник: evanfosmark.com )

Ответы [ 3 ]

3 голосов
/ 09 июня 2009

Поскольку вы не разместили код, вот простой код, который правильно работает с питоном 2.5 на windows

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 голос
/ 09 июня 2009

Это было связано с тем, что \n не был преобразован должным образом. Я хотел бы поблагодарить Алекса Мартелли за то, что он указал мне правильное направление.

0 голосов
/ 09 июня 2009

Может быть результат обрезается? Попробуйте wget или curl, чтобы получить файл напрямую и cmp к исходному изображению; это должно помочь отладить его. Кроме того, опубликуйте свой полный код и подробности среды, даже если это просто.

...