2017-02-02 9 views
0

私は、Blobstoreドキュメントの推奨に従って、Blobstore APIの使用方法をGCSに置き換える方法を検討しています。BlobStoreアップロードハンドラをGCSに置き換える

私が知る限り、ユーザーがファイルをアップロードできるようにするには、署名されたURLを渡してデータをアップロードできるようにしてください。

私が紛失しているのは、Blobstore APIにUploadHandlerがあり、ファイルがアップロードされたときに(たとえばメタデータをデータベースに保存する)いくつかのアクションを実行し、ユーザーのアップロード要求。

GCSに類似したものはありますか?そこで推奨されるアプローチは何ですか?ファイルのアップロードが完了したことをアプリに通知するようにユーザーに依頼すると、エラーが発生するようです。

+0

ここでは、ファイルのアップロードが成功したときにコールバックを使用して「ファイルがアップロードされたときのいくつかのアクション」を含む例を見つけることができます。 https://github.com/voscausa/appengine-gcs-upload – voscausa

答えて

0

アップロード処理が全くブロブストアに違いはありません、あなただけの

google.appengine.ext.blobstore.blobstore.create_upload_url(success_path, max_bytes_per_blob=None, max_bytes_total=None, rpc=None, gs_bucket_name=None) 
+0

これは私が今やっていることです。それはまだブロブストアAPIを使用していますが、これは私が避けようとしているものです。 – Remko

+0

blobstore自体はそのように見えますが、APIは残っている可能性があります。ドキュメントの上部にあるメモには、「注:BLOBデータを格納するためにBlobstoreではなくGoogle Cloud Storageを使用することを検討する必要があります」と書かれています。データを格納する手段ではなく、どこにデータを格納するか先。 – Aaron

1

Object Change Notificationという名前のクラウドストレージバケット(gs_bucket_name)でcreate the upload urlに必要なブロブストアAPIのアップロードに最も近いGCSのコンセプトを表しハンドラ。そのドキュメントの最後にGAEアプリの使用例があります。

しかし、オブジェクト変更通知の登録は、手動のgsutil呼び出しによって行われるため、使用するのは少し難しいかもしれません。

実際には、実際のストレージではなく、API自体が非難されていると思います。あるいは、少なくとも、それは、ブロブストアのPython APIの概要ノートの私の解釈です:

注:あなたはBLOBデータを格納するためというよりも、ブロブストアGoogle Cloud Storageを使用して検討すべきです。他のオプションは、それまでに利用可能になること -

は個人的に私は、少なくとも実際の API廃止日が公開され、および/またはアクティブ非推奨の警告が流れ始めるまで、今のブロブストアAPIにこだわっています。一方

0

、私は同様の質問への答えにつまずい:Provide a callback URL in Google Cloud Storage signed URL

答えは(推奨)フォームPOST方法を使用し、succes_action_redirectヘッダを追加すると思われます。これはPUTではご利用いただけません。私が思ったものは100%ではないので、私はBlobstoreに悩まされていると思います。

関連する問題