我有一个 Google App Engine 应用程序 (Python),它需要允许用户将图像上传到 blobstore。客户端,而不是 Web 应用程序,将是本地移动应用程序。我有以下代码进行上传:
class ImageGetUploadURLHandler(webapp2.RequestHandler):
def get(self):
self.response.headers['Content-Type'] = 'text/plain'
self.response.out.write(blobstore.create_upload_url('/imgupload'))
class ImageUploadHandler(blobstore_handlers.BlobstoreUploadHandler):
def post(self):
imgInfo = self.get_uploads('img')[0]
logging.info('Uploading image %s of size %i'.format(imgInfo.filename, imgInfo.size))
self.redirect('/echo?val=%s' % str(imgInfo.key()))
ImageUploadHandler
安装在, 的/imgupload
位置/echo
是一个简单的处理程序,可以回显val
作为文本/纯文本传入的任何内容。截至目前,我只是在使用 REST 测试工具,因为我还没有启动移动应用程序。我对 ImageGetUploadHandler 进行了 GET,并将生成的链接复制到测试应用程序中,在该应用程序中,我使用了一个带有 multipart/form-data 的 POST,其中一个图像文件位于上传 URL 的正确键下。当我这样做时,我收到以下错误:
ValueError: Invalid boundary in multipart form: ''
我不知道出了什么问题。非常感谢任何帮助。