2013-01-05 64 views
6

由於某種原因,我在GAE中得到奇怪的輸入西里爾符號。從表格輸入,GAE,錯誤

在本地環境中一切正常,我得到輸入字段中的內容,用self.request.get('')。 但在Appspot上,例如,我得到「1mxt1czq0snfzq ==」或「0ylqtdgb0yi =」,而不是俄語單詞。

中的.py

!/usr/bin/env python 
-*- coding: utf-8 -*- 
title = self.request.get('title') 

以html

meta charset="utf-8" 
input type="text" name="title" id="title" 

我卡住了。

編輯: 是的,它是Base64,你是對的。但是,爲什麼GAE使用它?並在哪裏改變它?爲什麼在本地和Appspot中有不同的行爲?

在相同的形式,我想該文件得到BlobHandler

<form class="form-horizontal" action="{{ upload_url }}" method="POST" enctype="multipart/form-data"> 
    <div class="control-group"> 
    <label class="control-label" for="title">Title</label> 
    <div class="controls"> 
     <input type="text" name="title" id="title"> 
    </div> 
    </div> 
    <div class="control-group"> 
    <label class="control-label" for="file">Load image</label> 
    <div class="controls"> 
     <input type="file" name="file" id="file" accept='image/*' required="required"> 
    </div> 
    </div> 

EDIT2: 是。 https://code.google.com/p/googleappengine/issues/detail?id=2749

在BlobHandler中看起來像GAE中的一個bug。

解決方案:accept-charset =「utf-8」在窗體中,稍後嘗試。

+4

這看起來像'base64'編碼數據... – aviraldg

回答

2

錯誤https://code.google.com/p/googleappengine/issues/detail?id=2749

接收字符集= 「UTF-8」 在形式不工作。

解決方案:app.yaml中 添加庫

- name: webob 
    version: "1.2.3" 
+0

這是解決方案或替代方法? –

+0

解決方案,如我所見。使用最新版本的庫與錯誤修復。 –

+0

爲我工作,謝謝! –