Bonjour à tous,
J'ai apparemment un problème d'encodage avec l'upload d'un fichier texte. Je développe une application javascript + GoogleAppEngine (Python). Les utilisateurs doivent pouvoir charger un fichier texte local et réaliser des traitements côté client. Pour se faire, j'utilise le plugin jQuery File-Upload. Pour fonctionner sous IE09 (browser utilisé par mon client), le plugin utilise une iframe pour envoyer le fichier et récupérer son contenu. Voici mon code python pour retourner le contenu du fichier (je tiens à préciser que je suis débutant en python, un autre développeur s'occupe normalement de la programmation côté serveur mais il est parti en vacances):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| @csrf_exempt
def fileUpload(request):
try:
file = request.FILES['files']
content = file.read(file.size)
logging.info(type(content))
logging.info(content)
result = [{"name": file.name,
"size": file.size,
"content": content}]
logging.info(result)
json_data = json.dumps(result)
logging.info(json_data)
return HttpResponse(json_data, content_type='text/plain')
except Exception, exception:
return utility.create_http_error_response(exception.message) |
Mon client m'a envoyé un fichier texte. Celui-ci ne fonctionne pas. Voici les logs :
2014-02-11 11:24:05.514 <type 'str'>
I 2014-02-11 11:24:05.560 Col1;Col2;...;ColN
W 2014-02-11 11:24:05.566 /app/maps/views.py:444: DeprecationWarning: BaseException.message has been deprecated as of Py
E 2014-02-11 11:24:05.567 /app/maps/views.py:444: DeprecationWarning: BaseException.message has been deprecated as of Py
E 2014-02-11 11:24:05.567 return utility.create_http_error_response(exception.message)
Si j'encode ce fichier en UTF-8 avec Notepad++, mon script fonctionne. Avez-vous une idée pour résoudre mon problème?
Partager