人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile


WindowsでXAMPPのApache上でphthonをCGIとして動かしています.
以下のようにサーバ上の画像を読み込んで画像としてレスポンスを返したいと思っていますが,
画像が破損してしまってうまく表示されません.

対応方法をご存知の方がもしいましたらご連絡いただけますと大変ありがたいです.
よろしくお願い致します.

#!C:\Python27\python.exe
# -*- coding: utf-8 -*-
print "Content-type: image/jpg"
print ""
print open("./img/test.jpg", "rb").read()


●質問者: rockafeller
●カテゴリ:ウェブ制作
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● a-kuma3
●300ポイント ベストアンサー

標準出力を、バイナリモードにする必要があるそうです。

#!C:\Python27\python.exe
# -*- coding: utf-8 -*-
import os, msvcrt
msvcrt.setmode(sys.stdout.fileno(), os.O_BINARY)
print "Content-type: image/jpeg"
print ""
print open("./img/test.jpg", "rb").read()

Content-type も jpeg にしています。

参考URL :
http://d.hatena.ne.jp/rage2050/20091022
http://code.activestate.com/recipes/65443/
http://stackoverflow.com/questions/4060339/python-cgi-serves-distorted-images


rockafellerさんのコメント
早速のご回答ありがとうございました. 以下のようにすることで無事画像が表示されました. #!C:\Python27\python.exe # -*- coding: utf-8 -*- import os, msvcrt, sys if sys.platform == "win32": msvcrt.setmode(sys.stdout.fileno(), os.O_BINARY) print "Content-type: image/jpeg" print "" print open("./img/cat.jpg", "rb").read()
関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ