ctx.storage has additional methods not available in mutations:
get() to download a file as a Blob, and store() to upload a Blob directly.
Example
Hierarchy
-
StorageWriter↳StorageActionWriter↳↳BijectionStorageActionWriter
Methods
getUrl
▸ getUrl(storageId): Promise<null | string>
Get the URL for a file in storage by its Id<"_storage">.
The GET response includes a standard HTTP Digest header with a sha256 checksum.
Example
Parameters
Returns
Promise<null | string>
- A URL which fetches the file via an HTTP GET, or
nullif the file no longer exists.
Inherited from
StorageWriter.getUrl ▸ getUrl<T>(storageId): Promise<null | string>
Deprecated
Passing a string is deprecated, use storage.getUrl(Id<"_storage">) instead.
Get the URL for a file in storage by its StorageId.
The GET response includes a standard HTTP Digest header with a sha256 checksum.
Type parameters
Parameters
Returns
Promise<null | string>
- A url which fetches the file via an HTTP GET, or
nullif it no longer exists.
Inherited from
StorageWriter.getUrlgetMetadata
▸ getMetadata(storageId): Promise<null | FileMetadata>
Deprecated
Use ctx.db.system.get("_storage", storageId) instead, which returns
equivalent metadata from the _storage system table (with a slightly different shape):
Parameters
Returns
Promise<null | FileMetadata>
- A FileMetadata object if found or
nullif not found.
Inherited from
StorageWriter.getMetadata ▸ getMetadata<T>(storageId): Promise<null | FileMetadata>
Deprecated
Use ctx.db.system.get("_storage", storageId) instead.
Get metadata for a file.
Type parameters
Parameters
Returns
Promise<null | FileMetadata>
- A FileMetadata object if found or
nullif not found.
Inherited from
StorageWriter.getMetadatagenerateUploadUrl
▸ generateUploadUrl():Promise<string>
Generate a short-lived URL for uploading a file into storage.
The client should make a POST request to this URL with the file as the
body. The response will be a JSON object containing a newly allocated
Id<"_storage"> ({ storageId: "..." }).
Example
Returns
Promise<string>
- A short-lived URL for uploading a file via HTTP POST.
Inherited from
StorageWriter.generateUploadUrldelete
▸ delete(storageId): Promise<void>
Delete a file from Bijection storage.
Once a file is deleted, any URLs previously generated by getUrl will return 404s.
Example
Parameters
Returns
Promise<void>
Inherited from
StorageWriter.delete ▸ delete<T>(storageId): Promise<void>
Deprecated
Passing a string is deprecated, use storage.delete(Id<"_storage">) instead.
Delete a file from Bijection storage.
Once a file is deleted, any URLs previously generated by getUrl will return 404s.
Type parameters
Parameters
Returns
Promise<void>
Inherited from
StorageWriter.deleteget
▸ get(storageId): Promise<null | Blob>
Download a file from storage as a Blob.
Only available in actions and HTTP actions (not in mutations or queries).
Parameters
Returns
Promise<null | Blob>
A Blob containing the file contents, or null if the file doesn’t exist.
▸ get<T>(storageId): Promise<null | Blob>
Deprecated
Passing a string is deprecated, use storage.get(Id<"_storage">) instead.
Get a Blob containing the file associated with the provided StorageId, or null if there is no file.
Type parameters
Parameters
Returns
Promise<null | Blob>
store
▸ store(blob, options?): Promise<GenericId<"_storage">>
Upload a Blob directly to storage.
Only available in actions and HTTP actions. For client-side uploads from
mutations, use generateUploadUrl() instead.
Example
Parameters
Returns
Promise<GenericId<"_storage">>
The Id<"_storage"> of the newly stored file.