0
我正在開發一個應用程序,它提示用戶上傳一個文件,然後可供下載。 這裏是下載處理程序:GAE Python Blobstore不在Firefox中保存包含unicode字面值的文件名
class ViewPrezentacje(blobstore_handlers.BlobstoreDownloadHandler, BaseHandler):
def get(self,blob_key):
blob_key = str(urllib.unquote(blob_key))
blob_info=blobstore.BlobInfo.get(blob_key)
self.send_blob(blob_info, save_as=urllib.quote(blob_info.filename.encode('utf-8')))
文件被下載了正確的文件名(即統一文字正確顯示),而使用Chrome或IE瀏覽器,但在Firefox它保存爲以下形式的字符串「 %83%86%E3 ...「 有什麼辦法可以讓它在Firefox中正常工作嗎?
是否相同的行爲與dev_appserver存在嗎?由於這個bug,我也遇到了blobstore的編碼問題; https://code.google.com/p/googleappengine/issues/detail?id=2749 – cdagli
我也遇到了與此錯誤相同的問題。我通過ajax提交表單數據並通過上傳文件形式提交文件來繞過它 - 每個觸發不同的處理程序(顯然blobstore處理程序不會正確編碼unicode字面值,無論發送它們的方式如ajax還是web表單)。但是,開發應用程序服務器上也會出現文件名問題。 –