很多時候我通過WSGI發送圖像數據(使用wsgiref
),圖像出現失真。作爲一個例子,檢查以下內容:通過使用Python發送WSGI應用程序後圖像失真
distorted Google logo http://evanfosmark.com/files/goog.gif
很多時候我通過WSGI發送圖像數據(使用wsgiref
),圖像出現失真。作爲一個例子,檢查以下內容:通過使用Python發送WSGI應用程序後圖像失真
distorted Google logo http://evanfosmark.com/files/goog.gif
它必須與\n
沒有正確轉換。我想感謝Alex Martelli指引我朝着正確的方向前進。
可能的結果是越來越截斷?嘗試使用wget
或curl
直接獲取文件,並將cmp
轉換爲原始圖像;這應該有助於調試它。除此之外,即使它很簡單,也可以發佈完整的代碼和環境細節。
當你還沒有發佈的代碼,這裏是一個簡單的代碼,正確使用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翻譯成\ r \ n或反之亦然,或控制Z阻礙。我從來沒有看到過這樣的問題,但是現在我幾乎不用Windows了(在任何其他系統上,如果我對'r'和'rb'打開馬虎sl it,它就不會有問題;-)。小心解釋相關平臺並向我們展示相關代碼? – 2009-06-09 01:59:53