Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>I think this code sample will solve you problem. You probably need to use only encode_multipart_formdata function from this code. And do not forget to set properly content type.</p> <pre><code>class BlobstoreUpload(blobstore_handlers.BlobstoreUploadHandler): def post(self): upload_files = self.get_uploads('file') blob_info = upload_files[0] return self.response.write(blob_info.key()) @classmethod def encode_multipart_formdata(cls, fields, files, mimetype='image/png'): """ Args: fields: A sequence of (name, value) elements for regular form fields. files: A sequence of (name, filename, value) elements for data to be uploaded as files. Returns: A sequence of (content_type, body) ready for urlfetch. """ boundary = 'paLp12Buasdasd40tcxAp97curasdaSt40bqweastfarcUNIQUE_STRING' crlf = '\r\n' line = [] for (key, value) in fields: line.append('--' + boundary) line.append('Content-Disposition: form-data; name="%s"' % key) line.append('') line.append(value) for (key, filename, value) in files: line.append('--' + boundary) line.append('Content-Disposition: form-data; name="%s"; filename="%s"' % (key, filename)) line.append('Content-Type: %s' % mimetype) line.append('') line.append(value) line.append('--%s--' % boundary) line.append('') body = crlf.join(line) content_type = 'multipart/form-data; boundary=%s' % boundary return content_type, body class UserProfile(webapp2.RequestHandler): def post(self): picture = self.request.POST.get('picture') # Write new picture to blob content_type, body = BlobstoreUpload.encode_multipart_formdata( [], [('file', name, image)]) response = urlfetch.fetch( url=blobstore.create_upload_url(self.uri_for('blobstore-upload')), payload=body, method=urlfetch.POST, headers={'Content-Type': content_type}, deadline=30 ) blob_key = response.content </code></pre>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    3. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload