@roit/roit-storage
v0.0.9
Published
### Usage for Google Cloud Storage
Downloads
29
Readme
ROIT Storage
Usage for Google Cloud Storage
In the env.yaml
file add the googleStorageCredential{}
attribute, with the number of folders inside the {}:
dev:
googleStorageCredential{5}: my-credential.json
Inject in your desired class:
import { GoogleCloudHandler } from '@roit/roit-storage'
constructor(
private readonly googleCloudHandler: GoogleCloudHandler
) {}
To use the retrieveFromStorage
method:
const filePath = 'path/from/my/file'
const bucketName = 'my-files-bucket'
const url = await this.googleCloudHandler.retrieveFromStorage(filePath, bucketName)
console.log(url) // outputs https://storage.googleapis.com/...
To use the getSignedUrl
method:
const filePath = 'path/from/my/file'
const bucketName = 'my-files-bucket'
const url = await this.googleCloudHandler.getSignedUrl(filePath, bucketName)
console.log(url)
The getSignedUrl
method returns a URL from Google that you need to perform a HTTP POST with the binary encoded file you want to upload, here is a example in Insomnia:
Nestjs Usage
In Nestjs, don't forget to add the GoogleCloudHandler
on the AppModule
as a provider:
@Module({
imports: [],
controllers: [],
providers: [
GoogleCloudHandler
],
})
export class AppModule { }