Send feedback
Class File (5.11.1)
Stay organized with collections
Save and categorize content based on your preferences.
Version 5.11.1 keyboard_arrow_down
A File object is created from your Bucket object using .
Inheritance
ServiceObject <File >
>
File
Package
@google-cloud/storage!
Constructors
(constructor)(bucket, name, options)
constructor ( bucket : Bucket , name : string , options ?: FileOptions );
Constructs a file object.
Parameters
Name Description bucket
Bucket
The Bucket instance this file is attached to.
name
string
The name of the remote file.
options
FileOptions
Configuration options.
Properties
acl
Property Value
bucket
Property Value
generation
Property Value
kmsKeyName
Property Value
Property Value
name
Property Value
parent
Property Value
signer
Property Value
storage
Property Value
userProject
Property Value
Methods
copy(destination, options)
copy ( destination : string | Bucket | File , options ?: CopyOptions ) : Promise<CopyResponse> ;
Parameters
Name Description destination
string | Bucket | File
options
CopyOptions
Returns
Type Description Promise <CopyResponse >
copy(destination, callback)
copy ( destination : string | Bucket | File , callback : CopyCallback ) : void ;
Parameters
Name Description destination
string | Bucket | File
callback
CopyCallback
Returns
copy(destination, options, callback)
copy ( destination : string | Bucket | File , options : CopyOptions , callback : CopyCallback ) : void ;
Parameters
Returns
createReadStream(options)
createReadStream ( options ?: CreateReadStreamOptions ) : Readable ;
Create a readable stream to read the contents of the remote file. It can be piped to a writable stream or listened to for 'data' events to read a file's contents.
In the unlikely event there is a mismatch between what you downloaded and the version in your Bucket, your error handler will receive an error with code "CONTENT_DOWNLOAD_MISMATCH". If you receive this error, the best recourse is to try downloading the file again.
For faster crc32c computation, you must manually install [fast-crc32c
](https://www.npmjs.com/package/fast-crc32c ):
$ npm install --save fast-crc32c
NOTE: Readable streams will emit the end
event when the file is fully downloaded.
Parameter
Returns
Type Description Readable {ReadableStream}
createResumableUpload(options)
createResumableUpload ( options ?: CreateResumableUploadOptions ) : Promise<CreateResumableUploadResponse> ;
Parameter
Returns
Type Description Promise <CreateResumableUploadResponse >
createResumableUpload(options, callback)
createResumableUpload ( options : CreateResumableUploadOptions , callback : CreateResumableUploadCallback ) : void ;
Parameters
Returns
createResumableUpload(callback)
createResumableUpload ( callback : CreateResumableUploadCallback ) : void ;
Parameter
Returns
createWriteStream(options)
createWriteStream ( options ?: CreateWriteStreamOptions ) : Writable ;
Create a writable stream to overwrite the contents of the file in your bucket.
A File object can also be used to create files for the first time.
Resumable uploads are automatically enabled and must be shut off explicitly by setting options.resumable
to false
.
Resumable uploads require write access to the $HOME directory. Through [config-store
](https://www.npmjs.com/package/configstore ), some metadata is stored. By default, if the directory is not writable, we will fall back to a simple upload. However, if you explicitly request a resumable upload, and we cannot write to the config directory, we will return a ResumableUploadError
.
There is some overhead when using a resumable upload that can cause noticeable performance degradation while uploading a series of small files. When uploading files less than 10MB, it is recommended that the resumable feature is disabled.
For faster crc32c computation, you must manually install [fast-crc32c
](https://www.npmjs.com/package/fast-crc32c ):
$ npm install --save fast-crc32c
NOTE: Writable streams will emit the finish
event when the file is fully uploaded.
[Upload Options (Simple or Resumable)]https://cloud.google.com/storage/docs/json_api/v1/how-tos/upload [Objects: insert API Documentation]https://cloud.google.com/storage/docs/json_api/v1/objects/insert
Parameter
Returns
Type Description Writable {WritableStream}
deleteResumableCache()
deleteResumableCache () : void ;
Delete failed resumable upload file cache.
Resumable file upload cache the config file to restart upload in case of failure. In certain scenarios, the resumable upload will not works and upload file cache needs to be deleted to upload the same file.
Following are some of the scenarios.
Resumable file upload failed even though the file is successfully saved on the google storage and need to clean up a resumable file cache to update the same file.
Resumable file upload failed due to pre-condition (i.e generation number is not matched) and want to upload a same file with the new generation number.
Returns
download(options)
download ( options ?: DownloadOptions ) : Promise<DownloadResponse> ;
Parameter
Returns
Type Description Promise <DownloadResponse >
download(options, callback)
download ( options : DownloadOptions , callback : DownloadCallback ) : void ;
Parameters
Returns
download(callback)
download ( callback : DownloadCallback ) : void ;
Parameter
Name Description callback
DownloadCallback
Returns
generateSignedPostPolicyV2(options)
generateSignedPostPolicyV2 ( options : GenerateSignedPostPolicyV2Options ) : Promise<GenerateSignedPostPolicyV2Response> ;
Parameter
Name Description options
GenerateSignedPostPolicyV2Options
Returns
Type Description Promise <GenerateSignedPostPolicyV2Response >
generateSignedPostPolicyV2(options, callback)
generateSignedPostPolicyV2 ( options : GenerateSignedPostPolicyV2Options , callback : GenerateSignedPostPolicyV2Callback ) : void ;
Parameters
Name Description options
GenerateSignedPostPolicyV2Options
callback
GenerateSignedPostPolicyV2Callback
Returns
generateSignedPostPolicyV2(callback)
generateSignedPostPolicyV2 ( callback : GenerateSignedPostPolicyV2Callback ) : void ;
Parameter
Name Description callback
GenerateSignedPostPolicyV2Callback
Returns
generateSignedPostPolicyV4(options)
generateSignedPostPolicyV4 ( options : GenerateSignedPostPolicyV4Options ) : Promise<GenerateSignedPostPolicyV4Response> ;
Parameter
Returns
Type Description Promise <GenerateSignedPostPolicyV4Response >
generateSignedPostPolicyV4(options, callback)
generateSignedPostPolicyV4 ( options : GenerateSignedPostPolicyV4Options , callback : GenerateSignedPostPolicyV4Callback ) : void ;
Parameters
Returns
generateSignedPostPolicyV4(callback)
generateSignedPostPolicyV4 ( callback : GenerateSignedPostPolicyV4Callback ) : void ;
Parameter
Returns
getExpirationDate()
getExpirationDate () : Promise<GetExpirationDateResponse> ;
Returns
Type Description Promise <GetExpirationDateResponse >
getExpirationDate(callback)
getExpirationDate ( callback : GetExpirationDateCallback ) : void ;
Parameter
Returns
getSignedPolicy(options)
getSignedPolicy ( options : GetSignedPolicyOptions ) : Promise<GetSignedPolicyResponse> ;
Parameter
Returns
Type Description Promise <GetSignedPolicyResponse >
getSignedPolicy(options, callback)
getSignedPolicy ( options : GetSignedPolicyOptions , callback : GetSignedPolicyCallback ) : void ;
Parameters
Returns
getSignedPolicy(callback)
getSignedPolicy ( callback : GetSignedPolicyCallback ) : void ;
Parameter
Returns
getSignedUrl(cfg)
getSignedUrl ( cfg : GetSignedUrlConfig ) : Promise<GetSignedUrlResponse> ;
Parameter
Returns
Type Description Promise <GetSignedUrlResponse >
getSignedUrl(cfg, callback)
getSignedUrl ( cfg : GetSignedUrlConfig , callback : GetSignedUrlCallback ) : void ;
Parameters
Returns
isPublic()
isPublic () : Promise<IsPublicResponse> ;
Returns
Type Description Promise <IsPublicResponse >
isPublic(callback)
isPublic ( callback : IsPublicCallback ) : void ;
Parameter
Name Description callback
IsPublicCallback
Returns
makePrivate(options)
makePrivate ( options ?: MakeFilePrivateOptions ) : Promise<MakeFilePrivateResponse> ;
Parameter
Returns
Type Description Promise <MakeFilePrivateResponse >
makePrivate(callback)
makePrivate ( callback : MakeFilePrivateCallback ) : void ;
Parameter
Name Description callback
MakeFilePrivateCallback
Returns
makePrivate(options, callback)
makePrivate ( options : MakeFilePrivateOptions , callback : MakeFilePrivateCallback ) : void ;
Parameters
Returns
makePublic()
makePublic () : Promise<MakeFilePublicResponse> ;
Returns
Type Description Promise <MakeFilePublicResponse >
makePublic(callback)
makePublic ( callback : MakeFilePublicCallback ) : void ;
Parameter
Returns
move(destination, options)
move ( destination : string | Bucket | File , options ?: MoveOptions ) : Promise<MoveResponse> ;
Parameters
Name Description destination
string | Bucket | File
options
MoveOptions
Returns
Type Description Promise <MoveResponse >
move(destination, callback)
move ( destination : string | Bucket | File , callback : MoveCallback ) : void ;
Parameters
Name Description destination
string | Bucket | File
callback
MoveCallback
Returns
move(destination, options, callback)
move ( destination : string | Bucket | File , options : MoveOptions , callback : MoveCallback ) : void ;
Parameters
Returns
publicUrl()
The public URL of this File Use to enable anonymous access via the returned URL.
Returns
Type Description string {string}
rename(destinationFile, options)
rename ( destinationFile : string | File , options ?: RenameOptions ) : Promise<RenameResponse> ;
Parameters
Name Description destinationFile
string | File
options
RenameOptions
Returns
Type Description Promise <RenameResponse >
rename(destinationFile, callback)
rename ( destinationFile : string | File , callback : RenameCallback ) : void ;
Parameters
Name Description destinationFile
string | File
callback
RenameCallback
Returns
rename(destinationFile, options, callback)
rename ( destinationFile : string | File , options : RenameOptions , callback : RenameCallback ) : void ;
Parameters
Name Description destinationFile
string | File
options
RenameOptions
callback
RenameCallback
Returns
request(reqOpts)
request ( reqOpts : DecorateRequestOptions ) : Promise <[ ResponseBody , Metadata ]>;
Parameter
Name Description reqOpts
DecorateRequestOptions
Returns
Type Description Promise <[ResponseBody , Metadata ]>
request(reqOpts, callback)
request ( reqOpts : DecorateRequestOptions , callback : BodyResponseCallback ) : void ;
Parameters
Name Description reqOpts
DecorateRequestOptions
callback
BodyResponseCallback
Returns
rotateEncryptionKey(options)
rotateEncryptionKey ( options ?: RotateEncryptionKeyOptions ) : Promise<RotateEncryptionKeyResponse> ;
Parameter
Name Description options
RotateEncryptionKeyOptions
Returns
Type Description Promise <RotateEncryptionKeyResponse >
rotateEncryptionKey(callback)
rotateEncryptionKey ( callback : RotateEncryptionKeyCallback ) : void ;
Parameter
Name Description callback
RotateEncryptionKeyCallback
Returns
rotateEncryptionKey(options, callback)
rotateEncryptionKey ( options : RotateEncryptionKeyOptions , callback : RotateEncryptionKeyCallback ) : void ;
Parameters
Name Description options
RotateEncryptionKeyOptions
callback
RotateEncryptionKeyCallback
Returns
save(data, options)
save ( data : string | Buffer , options ?: SaveOptions ) : Promise<void> ;
Parameters
Name Description data
string | Buffer
options
SaveOptions
Returns
Type Description Promise <void>
save(data, callback)
save ( data : string | Buffer , callback : SaveCallback ) : void ;
Parameters
Returns
save(data, options, callback)
save ( data : string | Buffer , options : SaveOptions , callback : SaveCallback ) : void ;
Parameters
Returns
setEncryptionKey(encryptionKey)
setEncryptionKey ( encryptionKey : string | Buffer ) : this ;
Parameter
Name Description encryptionKey
string | Buffer
An AES-256 encryption key.
Returns
Type Description this {File}
setStorageClass(storageClass, options)
setStorageClass ( storageClass : string , options ?: SetStorageClassOptions ) : Promise<SetStorageClassResponse> ;
Parameters
Returns
Type Description Promise <SetStorageClassResponse >
setStorageClass(storageClass, options, callback)
setStorageClass ( storageClass : string , options : SetStorageClassOptions , callback : SetStorageClassCallback ) : void ;
Parameters
Returns
setStorageClass(storageClass, callback)
setStorageClass ( storageClass : string , callback ?: SetStorageClassCallback ) : void ;
Parameters
Returns
setUserProject(userProject)
setUserProject ( userProject : string ) : void ;
Set a user project to be billed for all requests made from this File object.
Parameter
Name Description userProject
string
The user project.
Returns
startResumableUpload_(dup, options)
startResumableUpload_ ( dup : Duplexify , options : CreateResumableUploadOptions ) : void ;
Parameters
Returns
startSimpleUpload_(dup, options)
startSimpleUpload_ ( dup : Duplexify , options ?: CreateWriteStreamOptions ) : void ;
Takes a readable stream and pipes it to a remote file. Unlike startResumableUpload_
, which uses the resumable upload technique, this method uses a simple upload (all or nothing).
Parameters
Name Description dup
Duplexify
Duplexify stream of data to pipe to the file.
options
CreateWriteStreamOptions
Configuration object.
Returns
Send feedback
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License , and code samples are licensed under the Apache 2.0 License . For details, see the Google Developers Site Policies . Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-01-28 UTC.
Need to tell us more?
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-01-28 UTC."],[],[]]