Искажение изображения после отправки через приложение WSGI на Python

StackOverflow https://stackoverflow.com/questions/967826

  •  13-09-2019
  •  | 
  •  

Вопрос

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

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

Это было полезно?

Решение

Поскольку вы не разместили код, вот простой код, который правильно работает с Python 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"

Другие советы

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

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top