对此真的感到困惑......
我在
上提取内容ID app = webapp2.WSGIApplication([('/mobile/upload',MobileUploadHandler),
('/mobile/(.*)',ContentIDHandler)],debug=True)
如果内容ID附加了帖子操作,我会写一个表单(通过jinja2模板):
template = jinja_environment.get_template('templates/mobileupload.html')
template_values = {'upload_url':blobstore.create_upload_url('/mobile/upload')}
self.response.out.write(template.render(template_values))
blob上传网址在HTML中可见。我不知道它是正确的,但它看起来像一个blob上传网址。
当表单POST时,它应该重定向到这个处理程序:
`类MobileUploadHandler(blobstore_handlers.BlobstoreUploadHandler):
def post(self):`
然而,它永远不会到达 - 它重定向到/ mobile / undefined。
我不确定这意味着什么。我传递给create_upload_url的参数有问题吗?
答案 0 :(得分:0)
然而,它永远不会到达 - 它重定向到/ mobile / undefined。
这正是应该做的。
用户通过提交包含一个或多个文件输入字段的HTML表单来创建blob。您的应用程序调用create_upload_url()来获取此表单的目标(操作),并将该函数传递给应用程序中处理程序的URL路径。当用户提交表单时,用户的浏览器将指定的文件直接上载到Blobstore。 Blobstore重写用户的请求并存储上传的文件数据,用一个或多个相应的blob键替换上传的文件数据,然后将重写的请求传递给您提供给create_upload_url()的URL路径的处理程序。强>
https://developers.google.com/appengine/docs/python/blobstore/overview