Documentation ¶
Overview ¶
Package blobstore provides a client for App Engine's persistent blob storage service.
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/).
Index ¶
- func BlobKeyForFile(c appengine.Context, filename string) (appengine.BlobKey, error)
- func Delete(c appengine.Context, blobKey appengine.BlobKey) error
- func DeleteMulti(c appengine.Context, blobKey []appengine.BlobKey) error
- func ParseUpload(req *http.Request) (blobs map[string][]*BlobInfo, other url.Values, err error)
- func Send(response http.ResponseWriter, blobKey appengine.BlobKey)
- func UploadURL(c appengine.Context, successPath string, opts *UploadURLOptions) (*url.URL, error)
- type BlobInfo
- type Reader
- type UploadURLOptions
- type Writer
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func BlobKeyForFile ¶
BlobKeyForFile returns a BlobKey for a Google Storage file. The filename should be of the form "/gs/bucket_name/object_name".
func DeleteMulti ¶
DeleteMulti deletes multiple blobs.
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.
Types ¶
type BlobInfo ¶
type BlobInfo struct { BlobKey appengine.BlobKey ContentType string `datastore:"content_type"` CreationTime time.Time `datastore:"creation"` Filename string `datastore:"filename"` Size int64 `datastore:"size"` MD5 string `datastore:"md5_hash"` // ObjectName is the Google Cloud Storage name for this blob. ObjectName string `datastore:"gs_object_name"` }
BlobInfo is the blob metadata that is stored in the datastore. Filename may be empty.
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 Create ¶
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 (*Writer) Close ¶
Close flushes outstanding buffered writes and finalizes the blob. After calling Close the key can be retrieved by calling Key.