Compartir a través de


ShareFileClient class

Un objeto ShareFileClient representa una dirección URL a un archivo de Azure Storage.

Extends

StorageClient

Constructores

ShareFileClient(string, Credential | TokenCredential, ShareClientOptions)

Crea una instancia de ShareFileClient.

ShareFileClient(string, Pipeline, ShareClientConfig)

Crea una instancia de ShareFileClient.

Propiedades

name

Nombre del archivo

path

Ruta de acceso completa del archivo

shareName

Nombre del recurso compartido correspondiente a este cliente de archivos

Propiedades heredadas

accountName
url

Valor de cadena de dirección URL.

Métodos

abortCopyFromURL(string, FileAbortCopyFromURLOptions)

Anula una operación Copy File pendiente y deja un archivo de destino con una longitud cero y metadatos completos.

Consulte https://learn.microsoft.com/rest/api/storageservices/abort-copy-file

clearRange(number, number, FileClearRangeOptions)

Borra el intervalo especificado y libera el espacio usado en el almacenamiento de ese intervalo.

create(number, FileCreateOptions)

Crea un nuevo archivo o reemplaza un archivo. Tenga en cuenta que solo inicializa el archivo sin contenido.

Consulte https://learn.microsoft.com/rest/api/storageservices/create-file

createHardLink(string, FileCreateHardLinkOptions)

Solo NFS. Crea un vínculo directo al archivo especificado por ruta de acceso.

createSymbolicLink(string, FileCreateSymbolicLinkOptions)

Solo NFS. Crea un vínculo simbólico.

delete(FileDeleteOptions)

Quita el archivo de la cuenta de almacenamiento. Cuando un archivo se elimina correctamente, se quita inmediatamente del índice de la cuenta de almacenamiento y ya no es accesible para los clientes. Los datos del archivo se quitan más adelante del servicio durante la recolección de elementos no utilizados.

Se producirá un error en la eliminación del archivo con el código de estado 409 (conflicto) y el código de error SharingViolation si el archivo está abierto en un cliente SMB.

Delete File no se admite en una instantánea de recurso compartido, que es una copia de solo lectura de un recurso compartido. Se producirá un error al intentar realizar esta operación en una instantánea de recurso compartido con 400 (InvalidQueryParameterValue)

Consulte https://learn.microsoft.com/rest/api/storageservices/delete-file2

deleteIfExists(FileDeleteOptions)

Quita el archivo de la cuenta de almacenamiento si existe. Cuando un archivo se elimina correctamente, se quita inmediatamente del índice de la cuenta de almacenamiento y ya no es accesible para los clientes. Los datos del archivo se quitan más adelante del servicio durante la recolección de elementos no utilizados.

Se producirá un error en la eliminación del archivo con el código de estado 409 (conflicto) y el código de error SharingViolation si el archivo está abierto en un cliente SMB.

Delete File no se admite en una instantánea de recurso compartido, que es una copia de solo lectura de un recurso compartido. Se producirá un error al intentar realizar esta operación en una instantánea de recurso compartido con 400 (InvalidQueryParameterValue)

Consulte https://learn.microsoft.com/rest/api/storageservices/delete-file2

download(number, number, FileDownloadOptions)

Lee o descarga un archivo del sistema, incluidos sus metadatos y propiedades.

  • En Node.js, los datos devuelven en una secuencia legible readableStreamBody
  • En los exploradores, los datos se devuelven en una promesa contentAsBlob

Consulte https://learn.microsoft.com/rest/api/storageservices/get-file

downloadToBuffer(Buffer, number, number, FileDownloadToBufferOptions)

SOLO ESTÁ DISPONIBLE EN NODE.JS RUNTIME.

Descarga un archivo de Azure en paralelo a un búfer. Desplazamiento y recuento son opcionales, pase 0 para que ambos descarguen todo el archivo.

Advertencia: los búferes solo pueden admitir archivos de hasta un gigabyte en sistemas de 32 bits o aproximadamente dos gigabytes en sistemas de 64 bits debido a limitaciones de Node.js/V8. En el caso de los archivos de mayor tamaño, considere la posibilidad de downloadToFile.

downloadToBuffer(number, number, FileDownloadToBufferOptions)

SOLO DISPONIBLE EN NODE.JS RUNTIME

Descarga un archivo de Azure en paralelo a un búfer. El desplazamiento y el recuento son opcionales, pase 0 para que ambos descarguen todo el archivo.

Advertencia: los búferes solo pueden admitir archivos de hasta un gigabyte en sistemas de 32 bits o aproximadamente dos gigabytes en sistemas de 64 bits debido a limitaciones de Node.js/V8. En el caso de los archivos de mayor tamaño, considere la posibilidad de downloadToFile.

downloadToFile(string, number, number, FileDownloadOptions)

SOLO ESTÁ DISPONIBLE EN NODE.JS RUNTIME.

Descarga un blob de Azure en un archivo local. Se produce un error si la ruta de acceso del archivo especificada ya se cierra. El desplazamiento y el recuento son opcionales, pasan 0 y sin definir respectivamente para descargar todo el blob.

exists(FileExistsOptions)

Devuelve true si el archivo especificado existe; False en caso contrario.

NOTA: Use esta función con cuidado, ya que otros clientes o aplicaciones pueden eliminar un archivo existente. Viceversa, otros clientes o aplicaciones pueden agregar archivos nuevos viceversa una vez completada esta función.

forceCloseAllHandles(FileForceCloseHandlesOptions)

Forzar el cierre de todos los identificadores de un archivo.

Consulte https://learn.microsoft.com/rest/api/storageservices/force-close-handles

forceCloseHandle(string, FileForceCloseHandlesOptions)

Forzar cierre un identificador específico para un archivo.

Consulte https://learn.microsoft.com/rest/api/storageservices/force-close-handles

generateSasStringToSign(FileGenerateSasUrlOptions)

Solo está disponible para los clientes construidos con una credencial de clave compartida.

Genera una cadena para firmar un URI de firma de acceso compartido (SAS) de servicio en función de las propiedades y parámetros del cliente pasados. La SAS está firmada por la credencial de clave compartida del cliente.

Consulte https://learn.microsoft.com/rest/api/storageservices/constructing-a-service-sas

generateSasUrl(FileGenerateSasUrlOptions)

Solo está disponible para los clientes construidos con una credencial de clave compartida.

Genera un URI de firma de acceso compartido (SAS) de servicio basado en las propiedades y parámetros del cliente pasados. La SAS está firmada por la credencial de clave compartida del cliente.

Consulte https://learn.microsoft.com/rest/api/storageservices/constructing-a-service-sas

getProperties(FileGetPropertiesOptions)

Devuelve todos los metadatos definidos por el usuario, las propiedades HTTP estándar y las propiedades del sistema para el archivo. No devuelve el contenido del archivo.

Consulte https://learn.microsoft.com/rest/api/storageservices/get-file-properties

getRangeList(FileGetRangeListOptions)

Devuelve la lista de intervalos válidos para un archivo.

getRangeListDiff(string, FileGetRangeListOptions)

Devuelve la lista de intervalos que difieren entre una instantánea de recurso compartido anterior y este archivo.

getShareLeaseClient(string)

Obtenga un ShareLeaseClient que administra concesiones en el archivo.

getSymbolicLink(FileGetSymbolicLinkOptions)

Solo NFS. Obtiene el contenido de un enlace simbólico.

listHandles(FileListHandlesOptions)

Devuelve un iterador asincrónico para enumerar todos los identificadores. en la cuenta especificada.

.byPage() devuelve un iterador asincrónico para enumerar los identificadores de las páginas.

rename(string, FileRenameOptions)

Cambia el nombre de un archivo. Esta API solo admite el cambio de nombre de un archivo en el mismo recurso compartido.

resize(number, FileResizeOptions)

Cambiar el tamaño del archivo.

Consulte https://learn.microsoft.com/rest/api/storageservices/set-file-properties

setHttpHeaders(FileHttpHeaders, FileSetHttpHeadersOptions)

Establece encabezados HTTP en el archivo.

Si no se proporciona ninguna opción o ningún valor proporcionado para los encabezados HTTP del archivo en las opciones, estos encabezados HTTP de archivo sin un valor se borrarán.

Consulte https://learn.microsoft.com/rest/api/storageservices/set-file-properties

setMetadata(Metadata, FileSetMetadataOptions)

Actualiza los metadatos definidos por el usuario para el archivo especificado.

Si no hay metadatos definidos en el parámetro de opción, se quitarán los metadatos del archivo.

Consulte https://learn.microsoft.com/rest/api/storageservices/set-file-metadata

setProperties(FileProperties)

Establece las propiedades en el archivo.

Consulte https://learn.microsoft.com/rest/api/storageservices/set-file-properties

startCopyFromURL(string, FileStartCopyOptions)

Copia un blob o un archivo en un archivo de destino dentro de la cuenta de almacenamiento.

uploadData(Blob | ArrayBuffer | ArrayBufferView | Buffer, FileParallelUploadOptions)

Crea un nuevo archivo de Azure o reemplaza un archivo de Azure existente y, a continuación, carga un buffer(Node)/Blob/ArrayBuffer/ArrayBufferView en él.

uploadFile(string, FileParallelUploadOptions)

SOLO ESTÁ DISPONIBLE EN NODE.JS RUNTIME.

Crea un nuevo archivo de Azure o reemplaza un archivo de Azure existente y, a continuación, carga un archivo local en él.

uploadRange(RequestBodyType, number, number, FileUploadRangeOptions)

Cargue un intervalo de bytes en un archivo. Esta operación solo se puede llamar en un archivo existente. No cambiará el tamaño, las propiedades ni los metadatos del archivo. Se deben especificar tanto el inicio como el recuento del intervalo. El intervalo puede tener un tamaño de hasta 4 MB.

uploadRangeFromURL(string, number, number, number, FileUploadRangeFromURLOptions)

Cargue un intervalo de bytes en un archivo donde el contenido se lea desde la dirección URL de otro archivo. El intervalo puede tener un tamaño de hasta 4 MB.

uploadResetableStream((offset: number, count?: number) => ReadableStream, number, FileParallelUploadOptions)

SOLO ESTÁ DISPONIBLE EN NODE.JS RUNTIME.

Acepta una Node.js factoría de flujos legibles y carga en bloques en un archivo de Azure. El generador de secuencias legibles debe devolver un flujo legible Node.js a partir del desplazamiento definido. El desplazamiento es el desplazamiento en el archivo de Azure que se va a cargar.

uploadSeekableBlob((offset: number, size: number) => Blob, number, FileParallelUploadOptions)

SOLO ESTÁ DISPONIBLE EN EXPLORADORES.

Carga un objeto Blob del explorador en un archivo de Azure. Requiere un blobFactory como origen de datos, que necesita devolver un objeto Blob con el desplazamiento y el tamaño proporcionados.

uploadStream(Readable, number, number, number, FileUploadStreamOptions)

SOLO ESTÁ DISPONIBLE EN NODE.JS RUNTIME.

Crea un nuevo archivo de Azure o reemplaza un archivo de Azure existente y, a continuación, carga un flujo legible en él Node.js. Este método intentará crear un archivo de Azure y, a continuación, empezará a cargar el fragmento por fragmento. El tamaño del fragmento se define mediante bufferSize parámetro. Asegúrese de que el tamaño potencial de la secuencia no supere el tamaño del archivo.

SUGERENCIAS PARA MEJORAR EL RENDIMIENTO:

  • HighWaterMark de flujo de entrada es mejor establecer un mismo valor con el parámetro bufferSize, lo que evitará las operaciones Buffer.concat().
withShareSnapshot(string)

Crea un nuevo objeto ShareFileClient idéntico al origen, pero con la marca de tiempo de instantánea de recurso compartido especificada. Proporcione "" quitará la instantánea y devolverá una dirección URL a ShareFileClient base.

Detalles del constructor

ShareFileClient(string, Credential | TokenCredential, ShareClientOptions)

Crea una instancia de ShareFileClient.

new ShareFileClient(url: string, credential?: Credential | TokenCredential, options?: ShareClientOptions)

Parámetros

url

string

Cadena de dirección URL que apunta al archivo de Azure Storage, como "https://myaccount.file.core.windows.net/myshare/mydirectory/file". Puede anexar una SAS si usa AnonymousCredential, como "https://myaccount.file.core.windows.net/myshare/mydirectory/file?sasString". Este método acepta una dirección URL codificada o una dirección URL no codificada que apunta a un archivo. La cadena de dirección URL codificada NO se escapará dos veces, solo se escaparán los caracteres especiales de la ruta de acceso de dirección URL. Sin embargo, si un nombre de archivo o directorio incluye %, el nombre de archivo o directorio debe estar codificado en la dirección URL. Por ejemplo, un archivo denominado "myfile%", la dirección URL debe ser "https://myaccount.file.core.windows.net/myshare/mydirectory/myfile%25".

credential

Credential | TokenCredential

Por ejemplo, , StorageSharedKeyCredential o TokenCredential, si no se especifica, se usa AnonymousCredential.

options
ShareClientOptions

Optional. Opciones para configurar la canalización HTTP.

ShareFileClient(string, Pipeline, ShareClientConfig)

Crea una instancia de ShareFileClient.

new ShareFileClient(url: string, pipeline: Pipeline, options?: ShareClientConfig)

Parámetros

url

string

Cadena de dirección URL que apunta al archivo de Azure Storage, como "https://myaccount.file.core.windows.net/myshare/mydirectory/file". Puede anexar una SAS si usa AnonymousCredential, como "https://myaccount.file.core.windows.net/myshare/mydirectory/file?sasString". Este método acepta una dirección URL codificada o una dirección URL no codificada que apunta a un archivo. La cadena de dirección URL codificada NO se escapará dos veces, solo se escaparán los caracteres especiales de la ruta de acceso de dirección URL. Sin embargo, si un nombre de archivo o directorio incluye %, el nombre de archivo o directorio debe estar codificado en la dirección URL. Por ejemplo, un archivo denominado "myfile%", la dirección URL debe ser "https://myaccount.file.core.windows.net/myshare/mydirectory/myfile%25".

pipeline
Pipeline

Llame a newPipeline() para crear una canalización predeterminada o proporcionar una canalización personalizada.

Detalles de las propiedades

name

Nombre del archivo

string name

Valor de propiedad

string

path

Ruta de acceso completa del archivo

string path

Valor de propiedad

string

shareName

Nombre del recurso compartido correspondiente a este cliente de archivos

string shareName

Valor de propiedad

string

Detalles de las propiedades heredadas

accountName

accountName: string

Valor de propiedad

string

Heredado de StorageClient.accountName

url

Valor de cadena de dirección URL.

url: string

Valor de propiedad

string

se hereda de StorageClient.url

Detalles del método

abortCopyFromURL(string, FileAbortCopyFromURLOptions)

Anula una operación Copy File pendiente y deja un archivo de destino con una longitud cero y metadatos completos.

Consulte https://learn.microsoft.com/rest/api/storageservices/abort-copy-file

function abortCopyFromURL(copyId: string, options?: FileAbortCopyFromURLOptions): Promise<FileAbortCopyResponse>

Parámetros

copyId

string

Identificador de la operación Copiar archivo que se va a anular.

options
FileAbortCopyFromURLOptions

Opciones para anular la operación copiar desde la dirección URL del archivo.

Devoluciones

clearRange(number, number, FileClearRangeOptions)

Borra el intervalo especificado y libera el espacio usado en el almacenamiento de ese intervalo.

function clearRange(offset: number, contentLength: number, options?: FileClearRangeOptions): Promise<FileUploadRangeResponse>

Parámetros

offset

number

contentLength

number

options
FileClearRangeOptions

Opciones para la operación Borrar intervalo de archivos.

Devoluciones

create(number, FileCreateOptions)

Crea un nuevo archivo o reemplaza un archivo. Tenga en cuenta que solo inicializa el archivo sin contenido.

Consulte https://learn.microsoft.com/rest/api/storageservices/create-file

function create(size: number, options?: FileCreateOptions): Promise<FileCreateResponse>

Parámetros

size

number

Especifica el tamaño máximo en bytes para el archivo, hasta 4 TB.

options
FileCreateOptions

Opciones para la operación De creación de archivos.

Devoluciones

Datos de respuesta para la operación De creación de archivos.

Uso de ejemplo:

import { StorageSharedKeyCredential, ShareServiceClient } from "@azure/storage-file-share";

const account = "<account>";
const accountKey = "<accountkey>";

const credential = new StorageSharedKeyCredential(account, accountKey);
const serviceClient = new ShareServiceClient(
  `https://${account}.file.core.windows.net`,
  credential,
);

const shareName = "<share name>";
const directoryName = "<directory name>";
const directoryClient = serviceClient.getShareClient(shareName).getDirectoryClient(directoryName);

const content = "Hello World!";
const fileName = `newdirectory${+new Date()}`;
const fileClient = directoryClient.getFileClient(fileName);
await fileClient.create(content.length);
console.log(`Create file ${fileName} successfully`);

// Upload file range
await fileClient.uploadRange(content, 0, content.length);
console.log(`Upload file range "${content}" to ${fileName} successfully`);

Solo NFS. Crea un vínculo directo al archivo especificado por ruta de acceso.

function createHardLink(targetFile: string, options?: FileCreateHardLinkOptions): Promise<FileCreateHardLinkResponse>

Parámetros

targetFile

string

Ruta de acceso del archivo al que se va a crear el vínculo físico, no incluido el recurso compartido. Por ejemplo: "targetDirectory/targetSubDirectory/.../targetFile"

options
FileCreateHardLinkOptions

Opciones para crear una operación de vínculo duro.

Devoluciones

Solo NFS. Crea un vínculo simbólico.

function createSymbolicLink(linkText: string, options?: FileCreateSymbolicLinkOptions): Promise<FileCreateSymbolicLinkResponse>

Parámetros

linkText

string

La ruta al archivo original al que apunta el enlace simbólico. La ruta de acceso es de tipo string que no se resuelve y se almacena tal cual. La ruta puede ser una ruta absoluta o una ruta relativa en función del contenido almacenado en el archivo de enlace simbólico.

options
FileCreateSymbolicLinkOptions

Opciones para crear una operación de vínculo duro.

Devoluciones

delete(FileDeleteOptions)

Quita el archivo de la cuenta de almacenamiento. Cuando un archivo se elimina correctamente, se quita inmediatamente del índice de la cuenta de almacenamiento y ya no es accesible para los clientes. Los datos del archivo se quitan más adelante del servicio durante la recolección de elementos no utilizados.

Se producirá un error en la eliminación del archivo con el código de estado 409 (conflicto) y el código de error SharingViolation si el archivo está abierto en un cliente SMB.

Delete File no se admite en una instantánea de recurso compartido, que es una copia de solo lectura de un recurso compartido. Se producirá un error al intentar realizar esta operación en una instantánea de recurso compartido con 400 (InvalidQueryParameterValue)

Consulte https://learn.microsoft.com/rest/api/storageservices/delete-file2

function delete(options?: FileDeleteOptions): Promise<FileDeleteResponse>

Parámetros

options
FileDeleteOptions

Opciones para la operación De eliminación de archivos.

Devoluciones

Datos de respuesta para la operación De eliminación de archivos.

deleteIfExists(FileDeleteOptions)

Quita el archivo de la cuenta de almacenamiento si existe. Cuando un archivo se elimina correctamente, se quita inmediatamente del índice de la cuenta de almacenamiento y ya no es accesible para los clientes. Los datos del archivo se quitan más adelante del servicio durante la recolección de elementos no utilizados.

Se producirá un error en la eliminación del archivo con el código de estado 409 (conflicto) y el código de error SharingViolation si el archivo está abierto en un cliente SMB.

Delete File no se admite en una instantánea de recurso compartido, que es una copia de solo lectura de un recurso compartido. Se producirá un error al intentar realizar esta operación en una instantánea de recurso compartido con 400 (InvalidQueryParameterValue)

Consulte https://learn.microsoft.com/rest/api/storageservices/delete-file2

function deleteIfExists(options?: FileDeleteOptions): Promise<FileDeleteIfExistsResponse>

Parámetros

Devoluciones

download(number, number, FileDownloadOptions)

Lee o descarga un archivo del sistema, incluidos sus metadatos y propiedades.

  • En Node.js, los datos devuelven en una secuencia legible readableStreamBody
  • En los exploradores, los datos se devuelven en una promesa contentAsBlob

Consulte https://learn.microsoft.com/rest/api/storageservices/get-file

function download(offset?: number, count?: number, options?: FileDownloadOptions): Promise<FileDownloadResponseModel>

Parámetros

offset

number

Desde qué posición del archivo se va a descargar, mayor o igual que 0

count

number

Cantidad de datos que se van a descargar, mayores que 0. Se descargará al final cuando no esté definido

options
FileDownloadOptions

Opciones para la operación de descarga de archivos.

Devoluciones

Datos de respuesta para la operación de descarga de archivos.

Ejemplo de uso (Node.js):

import { StorageSharedKeyCredential, ShareServiceClient } from "@azure/storage-file-share";

const account = "<account>";
const accountKey = "<accountkey>";

const credential = new StorageSharedKeyCredential(account, accountKey);
const serviceClient = new ShareServiceClient(
  `https://${account}.file.core.windows.net`,
  credential,
);

const shareName = "<share name>";
const fileName = "<file name>";
const fileClient = serviceClient
  .getShareClient(shareName)
  .rootDirectoryClient.getFileClient(fileName);

// Get file content from position 0 to the end
// In Node.js, get downloaded data by accessing downloadFileResponse.readableStreamBody
const downloadFileResponse = await fileClient.download();
if (downloadFileResponse.readableStreamBody) {
  const buffer = await streamToBuffer(downloadFileResponse.readableStreamBody);
  console.log(`Downloaded file content: ${buffer.toString()}`);
}

// [Node.js only] A helper method used to read a Node.js readable stream into a Buffer
async function streamToBuffer(readableStream: NodeJS.ReadableStream): Promise<Buffer> {
  return new Promise((resolve, reject) => {
    const chunks: Buffer[] = [];
    readableStream.on("data", (data) => {
      chunks.push(data instanceof Buffer ? data : Buffer.from(data));
    });
    readableStream.on("end", () => {
      resolve(Buffer.concat(chunks));
    });
    readableStream.on("error", reject);
  });
}

Uso de ejemplo (exploradores):

import { ShareServiceClient } from "@azure/storage-file-share";

const account = "<account name>";
const sas = "<service Shared Access Signature Token>";

const serviceClient = new ShareServiceClient(`https://${account}.file.core.windows.net?${sas}`);

const shareName = "<share name>";
const fileName = "<file name>";
const fileClient = serviceClient
  .getShareClient(shareName)
  .rootDirectoryClient.getFileClient(fileName);

// Get file content from position 0 to the end
// In browsers, get downloaded data by accessing downloadFileResponse.blobBody
const downloadFileResponse = await fileClient.download(0);
if (downloadFileResponse.blobBody) {
  console.log(`Downloaded file content: ${(await downloadFileResponse.blobBody).text()}`);
}

downloadToBuffer(Buffer, number, number, FileDownloadToBufferOptions)

SOLO ESTÁ DISPONIBLE EN NODE.JS RUNTIME.

Descarga un archivo de Azure en paralelo a un búfer. Desplazamiento y recuento son opcionales, pase 0 para que ambos descarguen todo el archivo.

Advertencia: los búferes solo pueden admitir archivos de hasta un gigabyte en sistemas de 32 bits o aproximadamente dos gigabytes en sistemas de 64 bits debido a limitaciones de Node.js/V8. En el caso de los archivos de mayor tamaño, considere la posibilidad de downloadToFile.

function downloadToBuffer(buffer: Buffer, offset?: number, count?: number, options?: FileDownloadToBufferOptions): Promise<Buffer>

Parámetros

buffer

Buffer

El búfer que se va a rellenar debe tener una longitud mayor que el recuento.

offset

number

Desde qué posición del archivo de Azure se va a descargar

count

number

Cantidad de datos que se van a descargar. Se descargará al final al pasar sin definir

Devoluciones

Promise<Buffer>

downloadToBuffer(number, number, FileDownloadToBufferOptions)

SOLO DISPONIBLE EN NODE.JS RUNTIME

Descarga un archivo de Azure en paralelo a un búfer. El desplazamiento y el recuento son opcionales, pase 0 para que ambos descarguen todo el archivo.

Advertencia: los búferes solo pueden admitir archivos de hasta un gigabyte en sistemas de 32 bits o aproximadamente dos gigabytes en sistemas de 64 bits debido a limitaciones de Node.js/V8. En el caso de los archivos de mayor tamaño, considere la posibilidad de downloadToFile.

function downloadToBuffer(offset?: number, count?: number, options?: FileDownloadToBufferOptions): Promise<Buffer>

Parámetros

offset

number

Desde qué posición del archivo de Azure se va a descargar

count

number

Cantidad de datos que se van a descargar. Se descargará al final al pasar sin definir

Devoluciones

Promise<Buffer>

downloadToFile(string, number, number, FileDownloadOptions)

SOLO ESTÁ DISPONIBLE EN NODE.JS RUNTIME.

Descarga un blob de Azure en un archivo local. Se produce un error si la ruta de acceso del archivo especificada ya se cierra. El desplazamiento y el recuento son opcionales, pasan 0 y sin definir respectivamente para descargar todo el blob.

function downloadToFile(filePath: string, offset?: number, count?: number, options?: FileDownloadOptions): Promise<FileDownloadResponseModel>

Parámetros

filePath

string

offset

number

Desde qué posición del blob en bloques se va a descargar.

count

number

Cantidad de datos que se van a descargar. Se descargará al final al pasar sin definir.

options
FileDownloadOptions

Opciones para las opciones de descarga de blobs.

Devoluciones

Los datos de respuesta para la operación de descarga de blobs, pero con readableStreamBody establecido en indefinido, ya que su contenido ya está leído y escrito en un archivo local en la ruta de acceso especificada.

exists(FileExistsOptions)

Devuelve true si el archivo especificado existe; False en caso contrario.

NOTA: Use esta función con cuidado, ya que otros clientes o aplicaciones pueden eliminar un archivo existente. Viceversa, otros clientes o aplicaciones pueden agregar archivos nuevos viceversa una vez completada esta función.

function exists(options?: FileExistsOptions): Promise<boolean>

Parámetros

options
FileExistsOptions

opciones para la operación Exists.

Devoluciones

Promise<boolean>

forceCloseAllHandles(FileForceCloseHandlesOptions)

Forzar el cierre de todos los identificadores de un archivo.

Consulte https://learn.microsoft.com/rest/api/storageservices/force-close-handles

function forceCloseAllHandles(options?: FileForceCloseHandlesOptions): Promise<CloseHandlesInfo>

Parámetros

options
FileForceCloseHandlesOptions

Opciones para forzar la operación de identificadores de cierre.

Devoluciones

Promise<CloseHandlesInfo>

forceCloseHandle(string, FileForceCloseHandlesOptions)

Forzar cierre un identificador específico para un archivo.

Consulte https://learn.microsoft.com/rest/api/storageservices/force-close-handles

function forceCloseHandle(handleId: string, options?: FileForceCloseHandlesOptions): Promise<FileForceCloseHandlesResponse>

Parámetros

handleId

string

Identificador de identificador de identificador específico, no puede ser asterisco "*". Use forceCloseAllHandles() para cerrar todos los identificadores.

Devoluciones

generateSasStringToSign(FileGenerateSasUrlOptions)

Solo está disponible para los clientes construidos con una credencial de clave compartida.

Genera una cadena para firmar un URI de firma de acceso compartido (SAS) de servicio en función de las propiedades y parámetros del cliente pasados. La SAS está firmada por la credencial de clave compartida del cliente.

Consulte https://learn.microsoft.com/rest/api/storageservices/constructing-a-service-sas

function generateSasStringToSign(options: FileGenerateSasUrlOptions): string

Parámetros

options
FileGenerateSasUrlOptions

Parámetros opcionales.

Devoluciones

string

El URI de SAS que consta del URI del recurso representado por este cliente, seguido del token de SAS generado.

generateSasUrl(FileGenerateSasUrlOptions)

Solo está disponible para los clientes construidos con una credencial de clave compartida.

Genera un URI de firma de acceso compartido (SAS) de servicio basado en las propiedades y parámetros del cliente pasados. La SAS está firmada por la credencial de clave compartida del cliente.

Consulte https://learn.microsoft.com/rest/api/storageservices/constructing-a-service-sas

function generateSasUrl(options: FileGenerateSasUrlOptions): string

Parámetros

options
FileGenerateSasUrlOptions

Parámetros opcionales.

Devoluciones

string

El URI de SAS que consta del URI del recurso representado por este cliente, seguido del token de SAS generado.

getProperties(FileGetPropertiesOptions)

Devuelve todos los metadatos definidos por el usuario, las propiedades HTTP estándar y las propiedades del sistema para el archivo. No devuelve el contenido del archivo.

Consulte https://learn.microsoft.com/rest/api/storageservices/get-file-properties

function getProperties(options?: FileGetPropertiesOptions): Promise<FileGetPropertiesResponse>

Parámetros

options
FileGetPropertiesOptions

Opciones para la operación Obtener propiedades de archivo.

Devoluciones

Datos de respuesta para la operación Obtener propiedades de archivo.

getRangeList(FileGetRangeListOptions)

Devuelve la lista de intervalos válidos para un archivo.

function getRangeList(options?: FileGetRangeListOptions): Promise<FileGetRangeListResponse>

Parámetros

options
FileGetRangeListOptions

Opciones para la operación Obtener lista de intervalos de archivos.

Devoluciones

getRangeListDiff(string, FileGetRangeListOptions)

Devuelve la lista de intervalos que difieren entre una instantánea de recurso compartido anterior y este archivo.

function getRangeListDiff(prevShareSnapshot: string, options?: FileGetRangeListOptions): Promise<FileGetRangeListDiffResponse>

Parámetros

prevShareSnapshot

string

El parámetro de instantánea anterior es un valor DateTime opaco que especifica la instantánea de recurso compartido anterior con la que se va a comparar.

Devoluciones

getShareLeaseClient(string)

Obtenga un ShareLeaseClient que administra concesiones en el archivo.

function getShareLeaseClient(proposeLeaseId?: string): ShareLeaseClient

Parámetros

proposeLeaseId

string

Identificador de concesión propuesto inicial.

Devoluciones

Nuevo objeto ShareLeaseClient para administrar concesiones en el archivo.

Solo NFS. Obtiene el contenido de un enlace simbólico.

function getSymbolicLink(options?: FileGetSymbolicLinkOptions): Promise<FileGetSymbolicLinkResponse>

Parámetros

options
FileGetSymbolicLinkOptions

Opciones para obtener la operación de enlace simbólico.

Devoluciones

listHandles(FileListHandlesOptions)

Devuelve un iterador asincrónico para enumerar todos los identificadores. en la cuenta especificada.

.byPage() devuelve un iterador asincrónico para enumerar los identificadores de las páginas.

function listHandles(options?: FileListHandlesOptions): PagedAsyncIterableIterator<HandleItem, FileListHandlesResponse, PageSettings>

Parámetros

options
FileListHandlesOptions

Opciones para enumerar las operaciones de identificadores.

AsyncIterableIterator que admite la paginación.

Devoluciones

rename(string, FileRenameOptions)

Cambia el nombre de un archivo. Esta API solo admite el cambio de nombre de un archivo en el mismo recurso compartido.

function rename(destinationPath: string, options?: FileRenameOptions): Promise<{ destinationFileClient: ShareFileClient, fileRenameResponse: FileRenameResponse }>

Parámetros

destinationPath

string

Especifica la ruta de acceso de destino a la que se va a cambiar el nombre. La ruta de acceso se codificará para colocarla en una dirección URL para especificar el destino.

options
FileRenameOptions

Opciones para la operación de cambio de nombre.

Devoluciones

Promise<{ destinationFileClient: ShareFileClient, fileRenameResponse: FileRenameResponse }>

Datos de respuesta para la operación de cambio de nombre de archivo.

Uso de ejemplo:

import { StorageSharedKeyCredential, ShareServiceClient } from "@azure/storage-file-share";

const account = "<account>";
const accountKey = "<accountkey>";

const credential = new StorageSharedKeyCredential(account, accountKey);
const serviceClient = new ShareServiceClient(
  `https://${account}.file.core.windows.net`,
  credential,
);

const shareName = "<share name>";
const directoryName = "<directory name>";
const fileName = "<file name>";
const destinationPath = "<destination path>";
const fileClient = serviceClient
  .getShareClient(shareName)
  .getDirectoryClient(directoryName)
  .getFileClient(fileName);

await fileClient.rename(destinationPath);

resize(number, FileResizeOptions)

Cambiar el tamaño del archivo.

Consulte https://learn.microsoft.com/rest/api/storageservices/set-file-properties

function resize(length: number, options?: FileResizeOptions): Promise<FileSetHTTPHeadersResponse>

Parámetros

length

number

Cambia el tamaño de un archivo al tamaño especificado en bytes. Si el valor de byte especificado es menor que el tamaño actual del archivo, se borran todos los intervalos por encima del valor de bytes especificado.

options
FileResizeOptions

Opciones para la operación De cambio de tamaño de archivo.

Devoluciones

Datos de respuesta para la operación De encabezados HTTP del conjunto de archivos.

setHttpHeaders(FileHttpHeaders, FileSetHttpHeadersOptions)

Establece encabezados HTTP en el archivo.

Si no se proporciona ninguna opción o ningún valor proporcionado para los encabezados HTTP del archivo en las opciones, estos encabezados HTTP de archivo sin un valor se borrarán.

Consulte https://learn.microsoft.com/rest/api/storageservices/set-file-properties

function setHttpHeaders(fileHttpHeaders?: FileHttpHeaders, options?: FileSetHttpHeadersOptions): Promise<FileSetHTTPHeadersResponse>

Parámetros

fileHttpHeaders
FileHttpHeaders
options
FileSetHttpHeadersOptions

Opciones para la operación Establecer encabezados HTTP del conjunto de archivos.

Devoluciones

Datos de respuesta para la operación De encabezados HTTP del conjunto de archivos.

setMetadata(Metadata, FileSetMetadataOptions)

Actualiza los metadatos definidos por el usuario para el archivo especificado.

Si no hay metadatos definidos en el parámetro de opción, se quitarán los metadatos del archivo.

Consulte https://learn.microsoft.com/rest/api/storageservices/set-file-metadata

function setMetadata(metadata?: Metadata, options?: FileSetMetadataOptions): Promise<FileSetMetadataResponse>

Parámetros

metadata
Metadata

Si no se proporcionan metadatos, se quitarán todos los metadatos de directorio existentes.

options
FileSetMetadataOptions

Opciones para la operación de metadatos del conjunto de archivos.

Devoluciones

Datos de respuesta para la operación de metadatos del conjunto de archivos.

setProperties(FileProperties)

Establece las propiedades en el archivo.

Consulte https://learn.microsoft.com/rest/api/storageservices/set-file-properties

function setProperties(properties?: FileProperties): Promise<SetPropertiesResponse>

Parámetros

properties
FileProperties

Propiedades de archivo. En el caso de los encabezados HTTP de archivo (por ejemplo, Content-Type), si no se proporciona ningún valor, se quitarán los encabezados HTTP existentes. En el caso de otras propiedades de archivo (por ejemplo, fileAttributes), si no se proporciona ningún valor, se conservarán los valores existentes.

Devoluciones

startCopyFromURL(string, FileStartCopyOptions)

Copia un blob o un archivo en un archivo de destino dentro de la cuenta de almacenamiento.

function startCopyFromURL(copySource: string, options?: FileStartCopyOptions): Promise<FileStartCopyResponse>

Parámetros

copySource

string

Especifica la dirección URL del archivo de origen o el blob, hasta 2 KB de longitud. Para copiar un archivo en otro archivo dentro de la misma cuenta de almacenamiento, puede usar clave compartida para autenticar el archivo de origen. Si va a copiar un archivo desde otra cuenta de almacenamiento o si va a copiar un blob desde la misma cuenta de almacenamiento u otra cuenta de almacenamiento, debe autenticar el archivo de origen o el blob mediante una firma de acceso compartido. Si el origen es un blob público, no se requiere autenticación para realizar la operación de copia. Un archivo de una instantánea de recurso compartido también se puede especificar como origen de copia.

options
FileStartCopyOptions

Opciones para iniciar la operación de copia de inicio de archivo.

Devoluciones

uploadData(Blob | ArrayBuffer | ArrayBufferView | Buffer, FileParallelUploadOptions)

Crea un nuevo archivo de Azure o reemplaza un archivo de Azure existente y, a continuación, carga un buffer(Node)/Blob/ArrayBuffer/ArrayBufferView en él.

function uploadData(data: Blob | ArrayBuffer | ArrayBufferView | Buffer, options?: FileParallelUploadOptions): Promise<void>

Parámetros

data

Blob | ArrayBuffer | ArrayBufferView | Buffer

Buffer(Node), Blob, ArrayBuffer o ArrayBufferView

Devoluciones

Promise<void>

uploadFile(string, FileParallelUploadOptions)

SOLO ESTÁ DISPONIBLE EN NODE.JS RUNTIME.

Crea un nuevo archivo de Azure o reemplaza un archivo de Azure existente y, a continuación, carga un archivo local en él.

function uploadFile(filePath: string, options?: FileParallelUploadOptions): Promise<void>

Parámetros

filePath

string

Ruta de acceso completa del archivo local

Devoluciones

Promise<void>

uploadRange(RequestBodyType, number, number, FileUploadRangeOptions)

Cargue un intervalo de bytes en un archivo. Esta operación solo se puede llamar en un archivo existente. No cambiará el tamaño, las propiedades ni los metadatos del archivo. Se deben especificar tanto el inicio como el recuento del intervalo. El intervalo puede tener un tamaño de hasta 4 MB.

function uploadRange(body: RequestBodyType, offset: number, contentLength: number, options?: FileUploadRangeOptions): Promise<FileUploadRangeResponse>

Parámetros

body
HttpRequestBody

Blob, string, ArrayBuffer, ArrayBufferView o una función que devuelve una nueva secuencia legible cuyo desplazamiento procede del origen de datos.

offset

number

Posición de desplazamiento del archivo de Azure de destino que se va a cargar.

contentLength

number

Longitud del cuerpo en bytes. Use Buffer.byteLength() para calcular la longitud del cuerpo de una cadena, incluidos caracteres no codificados en Base64/Hexadecimal.

options
FileUploadRangeOptions

Opciones para la operación De carga de archivos.

Devoluciones

Datos de respuesta para la operación Intervalo de carga de archivos.

Uso de ejemplo:

import { StorageSharedKeyCredential, ShareServiceClient } from "@azure/storage-file-share";

const account = "<account>";
const accountKey = "<accountkey>";

const credential = new StorageSharedKeyCredential(account, accountKey);
const serviceClient = new ShareServiceClient(
  `https://${account}.file.core.windows.net`,
  credential,
);

const shareName = "<share name>";
const directoryName = "<directory name>";
const directoryClient = serviceClient.getShareClient(shareName).getDirectoryClient(directoryName);

const content = "Hello World!";
const fileName = `newdirectory${+new Date()}`;
const fileClient = directoryClient.getFileClient(fileName);
await fileClient.create(content.length);
console.log(`Create file ${fileName} successfully`);

// Upload file range
await fileClient.uploadRange(content, 0, content.length);
console.log(`Upload file range "${content}" to ${fileName} successfully`);

uploadRangeFromURL(string, number, number, number, FileUploadRangeFromURLOptions)

Cargue un intervalo de bytes en un archivo donde el contenido se lea desde la dirección URL de otro archivo. El intervalo puede tener un tamaño de hasta 4 MB.

function uploadRangeFromURL(sourceURL: string, sourceOffset: number, destOffset: number, count: number, options?: FileUploadRangeFromURLOptions): Promise<FileUploadRangeFromURLResponse>

Parámetros

sourceURL

string

Especifique una dirección URL para el origen de copia, la firma de acceso compartido (SAS) quizá sea necesaria para la autenticación.

sourceOffset

number

Desplazamiento de origen desde el que se va a copiar. Pase 0 para copiar desde el principio del archivo de origen.

destOffset

number

Desplazamiento del archivo de destino.

count

number

Número de bytes que se van a cargar desde el archivo de origen.

options
FileUploadRangeFromURLOptions

Opciones para configurar archivo: cargar intervalo desde la operación de dirección URL.

Devoluciones

uploadResetableStream((offset: number, count?: number) => ReadableStream, number, FileParallelUploadOptions)

SOLO ESTÁ DISPONIBLE EN NODE.JS RUNTIME.

Acepta una Node.js factoría de flujos legibles y carga en bloques en un archivo de Azure. El generador de secuencias legibles debe devolver un flujo legible Node.js a partir del desplazamiento definido. El desplazamiento es el desplazamiento en el archivo de Azure que se va a cargar.

function uploadResetableStream(streamFactory: (offset: number, count?: number) => ReadableStream, size: number, options?: FileParallelUploadOptions): Promise<void>

Parámetros

streamFactory

(offset: number, count?: number) => ReadableStream

Devuelve un flujo legible Node.js a partir del desplazamiento definido.

size

number

Tamaño del archivo de Azure

Devoluciones

Promise<void>

uploadSeekableBlob((offset: number, size: number) => Blob, number, FileParallelUploadOptions)

SOLO ESTÁ DISPONIBLE EN EXPLORADORES.

Carga un objeto Blob del explorador en un archivo de Azure. Requiere un blobFactory como origen de datos, que necesita devolver un objeto Blob con el desplazamiento y el tamaño proporcionados.

function uploadSeekableBlob(blobFactory: (offset: number, size: number) => Blob, size: number, options?: FileParallelUploadOptions): Promise<void>

Parámetros

blobFactory

(offset: number, size: number) => Blob

size

number

Devoluciones

Promise<void>

uploadStream(Readable, number, number, number, FileUploadStreamOptions)

SOLO ESTÁ DISPONIBLE EN NODE.JS RUNTIME.

Crea un nuevo archivo de Azure o reemplaza un archivo de Azure existente y, a continuación, carga un flujo legible en él Node.js. Este método intentará crear un archivo de Azure y, a continuación, empezará a cargar el fragmento por fragmento. El tamaño del fragmento se define mediante bufferSize parámetro. Asegúrese de que el tamaño potencial de la secuencia no supere el tamaño del archivo.

SUGERENCIAS PARA MEJORAR EL RENDIMIENTO:

  • HighWaterMark de flujo de entrada es mejor establecer un mismo valor con el parámetro bufferSize, lo que evitará las operaciones Buffer.concat().
function uploadStream(stream: Readable, size: number, bufferSize: number, maxBuffers: number, options?: FileUploadStreamOptions): Promise<void>

Parámetros

stream

Readable

Node.js secuencia legible. Debe ser menor o igual que el tamaño de archivo.

size

number

Tamaño del archivo que se va a crear. El tamaño máximo permitido es de 4 TB. Si este valor es mayor que el tamaño de la secuencia, habrá bytes vacíos en la cola del archivo.

bufferSize

number

Tamaño de cada búfer asignado en bytes, también el tamaño del fragmento o intervalo durante el archivo cargado. El tamaño debe ser mayor que 0 y menor o igual que 4 * 1024 * 1024 (4 MB)

maxBuffers

number

Los búferes máximos se asignarán durante la carga, correlación positiva con la simultaneidad máxima de carga.

Devoluciones

Promise<void>

withShareSnapshot(string)

Crea un nuevo objeto ShareFileClient idéntico al origen, pero con la marca de tiempo de instantánea de recurso compartido especificada. Proporcione "" quitará la instantánea y devolverá una dirección URL a ShareFileClient base.

function withShareSnapshot(shareSnapshot: string): ShareFileClient

Parámetros

shareSnapshot

string

Marca de tiempo de la instantánea de recurso compartido.

Devoluciones

Nuevo objeto ShareFileClient idéntico al origen, pero con la marca de tiempo de instantánea de recurso compartido especificada.