我不得不存储大小超过1MB的文件,谷歌应用引擎建议我将它们存储在Google Cloud 端存储中 . 应用引擎BlobProperty不合适 .
Using Blobstore API with Google Cloud Storage部分建议使用create_upload_url函数的gs_bucket_name参数 .
我尝试过这个 .
gcs_upload_url = blobstore.create_upload_url('/myupload', gs_bucket_name='bucketname.appspot.com/')
我为POST获得的结果URL不是 /myupload
,它有点像
<form action="http://myapp.appspot.com/_ah/upload/XXXXXXXXXXX7NNN-XXXXYYY/" method="post" enctype="multipart/form-data">
我在/ upload /之后更改了部分,但重点是,它显然错过了创建一个正确的上传URL,我的处理程序可以识别它 .
将create_upload_url与gs_bucket_name一起使用的正确方法是什么,并且获取正确的URL来处理帖子?
显然官方文档在这里没有帮助 .
2 回答
您在
create_upload_url
函数中传递的路径是success_path . 见下面的描述 .在将文件上载到BlobStore或Google Cloud Storage后,App Engine会调用success_path .
此函数提供的URL旨在用作上载表单的操作 . 您提供的路径类似于上传后处理程序 .
这是正确的方法 . 上传URL由AppEngine本身处理:它将接受文件上传,然后直接调用您自己的处理程序 .