Python で App Engine を使用しています。ユーザーの画像を保存するために、 Google ドキュメントに示されているようにブロブストアに直接書き込みます。
私のコードは以下の通りです:
# Image insertion in the blobstore
file_name = files.blobstore.create(mime_type='image/jpeg')
with files.open(file_name, 'a') as f:
f.write(self.imageContent)
files.finalize(file_name)
self.blobKey = files.blobstore.get_blob_key(file_name)
logging.info("Blobkey: "+str(self.blobKey))
問題は不安定です。私は何も変えていません。昨日から時々うまくいくこともあります。なんで?ブロブキー (コードの最後の行) を出力すると、画像がブロブストアに保存されているかどうかを確認できます。
動作すると、次の行が表示されます。
Blobkey: AMIfv94p1cFdqkZa3AhZUF2Tf76szVEwpGgwOpN...
機能しない場合、ログに次のように記録されます。
Blobkey: None
最後の詳細: 画像 (self.imageContent) は、各書き込みの前に前処理され、.JPEG に変換されます。
編集:
毎回、画像はブロブストアに保存されます (管理コンソールのブロブビューアーで見ることができます)。つまり、誤動作している get_blob_key 関数です...
このような状況で私は何をすべきか知りたいですか?App Engine の動作を不安定にする何か間違ったことをしていますか? どうすればこれを解決できますか?