0

サードパーティのサーバーでホストされている画像をアップロードしようとしています。私が使用しているコードは次のとおりです。

def saveEdit(リクエスト):

image = request.REQUEST.get('image','')
title = request.REQUEST.get('title','')
type = request.REQUEST.get('type','')
state = request.REQUEST.get('state','')

cimage = cloudinary.uploader.upload(image, public_id = 'img_'+request.user.__str__()+"_"+title, format='jpg')

return HttpResponse('Got '+image + " type: "+type + " state: "+state + " title:"+request.user.__str__() + "_"+title + " uploaded "+cimage.image.url)

次のエラーが表示されます。

無効な画像ファイル

リクエスト方法:GET
リクエスト URL: http://127.0.0.1:8000/saveEdit?image=http://app2.pixlr.com/_temp/507f95e1ec8d8337e5000002.jpg&type=jpg&state=copy&title=13838
ジャンゴのバージョン: 1.4.1
例外タイプ: 例外
例外値:    
無効な画像ファイル
例外の場所: call_api の 155 行目の /Library/Python/2.7/site-packages/cloudinary/uploader.py

何が間違っているのかわかりません - 助けてもらえますか?

ありがとう。

4

1 に答える 1

1

ここでの問題は、リクエストから受け取った画像パラメータが実際にはタイプがunicodeであり、strではないことです。CloudinaryのPythonライブラリの現在のバージョンは、これを正しく処理しません。ライブラリの次のバージョンには、この問題の修正が含まれます。その間、次のことができます。

cimage = cloudinary.uploader.upload(image.encode('utf-8'), public_id = 'img_'+request.user.__str__()+"_"+title, format='jpg')

これを報告していただきありがとうございます。

于 2012-10-18T08:59:09.220 に答える