The blobstore package

Introduction

NOTE: The Files API was deprecated on June 11, 2013 (v1.8.1) and will
be shut down soon, at which point these functions will no longer
work. Use Google Cloud Storage instead (https://cloud.google.com/storage/).

func BlobKeyForFile

BlobKeyForFile returns a BlobKey for a Google Storage file.
The filename should be of the form "/gs/bucket_name/object_name".

func Create

func Create(c appengine.Context, mimeType string) (*Writer, error)

Create begins creating a new blob. The provided mimeType if non-empty
is stored in the blob's BlobInfo in datastore, else defaults to
application/octet-stream. The returned Writer should be written to,
then closed, and then its Key method can be called to retrieve the
newly-created blob key if there were no errors.

func ParseUpload

ParseUpload parses the synthetic POST request that your app gets from
App Engine after a user's successful upload of blobs. Given the request,
ParseUpload returns a map of the blobs received (keyed by HTML form
element name) and other non-blob POST parameters.

func Send

func Send(response http.ResponseWriter, blobKey appengine.BlobKey)

Send sets the headers on response to instruct App Engine to send a blob as
the response body. This is more efficient than reading and writing it out
manually and isn't subject to normal response size limits.

func UploadURL

UploadURL creates an upload URL for the form that the user will
fill out, passing the application path to load when the POST of the
form is completed. These URLs expire and should not be reused. The
opts parameter may be nil.

BlobInfo is the blob metadata that is stored in the datastore.
Filename may be empty.

type Reader

type Reader interface {
io.Reader
io.ReaderAt
io.Seeker
}

Reader is a blob reader.

func NewReader

func NewReader(c appengine.Context, blobKey appengine.BlobKey) Reader

NewReader returns a reader for a blob. It always succeeds; if the blob does
not exist then an error will be reported upon first read.

type UploadURLOptions

type UploadURLOptions struct {
MaxUploadBytes int64 // optional
MaxUploadBytesPerBlob int64 // optional// StorageBucket specifies the Google Cloud Storage bucket in which// to store the blob.// This is required if you use Cloud Storage instead of Blobstore.// Your application must have permission to write to the bucket.// You may optionally specify a bucket name and path in the format// "bucket_name/path", in which case the included path will be the// prefix of the uploaded object's name.
StorageBucket string
}

UploadURLOptions are the options to create an upload URL.

type Writer

type Writer struct {
// contains filtered or unexported fields
}

Writer is used for writing blobs. Blobs aren't fully written until
Close is called, at which point the key can be retrieved by calling
the Key method.

func (*Writer) Close

func (w *Writer) Close() (closeErr error)

Close flushes outstanding buffered writes and finalizes the blob. After
calling Close the key can be retrieved by calling Key.

func (*Writer) Key

func (w *Writer) Key() (appengine.BlobKey, error)

Key returns the created blob key. It must be called after Close.
An error is returned if Close wasn't called or returned an error.