ファイルを Dropbox API に送信する Django 用のマルチアップローダーを作成しようとしています。私が今抱えている問題は、画像以外のファイルに対して正常に機能することです。ファイルはドロップボックス アカウントにアップロードされますが、画像を開くことができません。それらは破損しているようです。
これは私が使用しているコードです
def multiuploader(request):
if request.method == 'POST':
user_profile = UserProfile.objects.get(user = request.user)
sess = session.DropboxSession(settings.DROPBOX_AUTH_KEY, settings.DROPBOX_AUTH_SECRET, access_type=settings.DROPBOX_ACCESS_TYPE)
sess.set_token(user_profile.dropbox_profile.access_token['key'], user_profile.dropbox_profile.access_token['secret'])
drop_client = client.DropboxClient(sess)
files = request.FILES.getlist(u'files[]')
for file in files:
folder = Project.objects.get(id=request.POST['project_id']).title
result_db = drop_client.put_file(settings.APP_NAME + '/' + folder + '/' + file.name, file.file)
destination = open(file.name , 'wb+')
for chunk in file.chunks():
destination.write(chunk)
destination.close()
#generating json response array
result = []
result.append({"files": [
{
"name": result_db['path'][result_db['path'].rfind('/') + 1:],
"size": result_db['bytes'],
"mime": result_db['mime_type']
}
]})
response_data = simplejson.dumps(result)
#checking for json data type
if "application/json" in request.META['HTTP_ACCEPT_ENCODING']:
mimetype = 'application/json'
else:
mimetype = 'text/plain'
return HttpResponse(response_data, mimetype=mimetype)
else: #GET
return HttpResponse('Only POST accepted')
何か案が?