Compartir a través de


List Ranges

La operación List Ranges devuelve la lista de los intervalos válidos de un archivo.

Disponibilidad del protocolo

Protocolo de recurso compartido de archivos habilitado Disponible
SMB Sí
NFS No

Solicitud

Puede construir la List Ranges solicitud como se indica a continuación. Se recomienda HTTPS.

Método URI de solicitud Versión de HTTP
GET https://myaccount.file.core.windows.net/myshare/mydirectorypath/myfile?comp=rangelist HTTP/1.1
GET https://myaccount.file.core.windows.net/myshare/mydirectorypath/myfile?sharesnapshot=<DateTime>&comp=rangelist HTTP/1.1
GET https://myaccount.file.core.windows.net/myshare/mydirectorypath/myfile?comp=rangelist&snapshot=<DateTime>&prevsharesnapshot=<DateTime> HTTP/1.1
GET https://myaccount.file.core.windows.net/myshare/mydirectorypath/myfile?comp=rangelist&prevsharesnapshot=<DateTime> HTTP/1.1

Reemplace los componentes de la ruta de acceso que se muestran en el URI de solicitud por los suyos de la siguiente manera:

Componente de ruta de acceso Descripción
myaccount El nombre de la cuenta de almacenamiento.
myshare El nombre del recurso compartido de archivos.
mydirectorypath Opcional. La ruta de acceso al directorio principal.
myfile Nombre del archivo.

Para más información sobre las restricciones de nomenclatura de rutas de acceso, consulte Nomenclatura y referencia a recursos compartidos, directorios, archivos y metadatos.

Parámetros del identificador URI

Puede especificar los siguientes parámetros adicionales en el URI de solicitud.

Parámetro Descripción
sharesnapshot Opcional. Versión 2017-04-17 y posteriores. El sharesnapshot parámetro es un valor opaco DateTime que, cuando está presente, especifica la instantánea de recurso compartido que se va a consultar para el archivo.
timeout Opcional. El parámetro timeout se expresa en segundos. Para obtener más información, consulte Configuración de tiempos de espera para operaciones de Azure Files.
prevsharesnapshot Opcional en la versión 2020-02-10 y posteriores. El prevsharesnapshot parámetro es un valor opaco DateTime que, cuando está presente, especifica la instantánea anterior.

Cuando este parámetro y sharesnapshot están presentes, la respuesta solo contendrá intervalos de páginas que se cambiaron entre las dos instantáneas. Cuando solo prevsharesnapshot está presente, la respuesta solo contendrá intervalos de páginas que se cambiaron entre esta instantánea y el recurso compartido activo.

Las páginas modificadas incluyen páginas actualizadas y desactivadas.

Encabezados de solicitud

En la tabla siguiente se describen los encabezados de solicitud requeridos y opcionales.

Encabezado de solicitud Descripción
Authorization Necesario. Especifica el esquema de autorización, el nombre de la cuenta y la firma. Para obtener más información, vea Autorización de solicitudes a Azure Storage.
Date o x-ms-date Necesario. Especifica la hora universal coordinada (UTC) de la solicitud. Para obtener más información, vea Autorización de solicitudes a Azure Storage.
x-ms-version Obligatorio para todas las solicitudes autorizadas. Especifica la versión de la operación que se utiliza para esta solicitud. Para obtener más información, vea Versiones de los servicios de Azure Storage.
Range Opcional. Especifica el intervalo de bytes (incluidos) cuya lista de intervalos se va a obtener. Si se omite, se devuelven todos los intervalos del archivo.
x-ms-range Opcional. Especifica el intervalo de bytes (incluidos) cuya lista de intervalos se va a obtener.

Si se especifican los encabezados Range y x-ms-range, el servicio utiliza el valor de x-ms-range. Consulte Especificación del encabezado de intervalo para las operaciones de Azure Files para obtener más información.
x-ms-lease-id:<ID> Opcional. Versión 2019-02-02 y posteriores. Si se especifica el encabezado, la operación solo se realizará si la concesión del archivo está activa actualmente y el identificador de concesión especificado en la solicitud coincide con el del archivo. De lo contrario, se produce un error en la operación con el código de estado 412 (error de condición previa).
x-ms-client-request-id Opcional. Proporciona un valor opaco generado por el cliente con un límite de caracteres de 1 kibibyte (KiB) que se registra en los registros cuando se configura el registro. Se recomienda encarecidamente usar este encabezado para correlacionar las actividades del lado cliente con las solicitudes que recibe el servidor. Para obtener más información, vea Supervisar Azure Files.
x-ms-file-request-intent Obligatorio si Authorization el encabezado especifica un token de OAuth. El valor aceptable es backup. Este encabezado especifica que se debe conceder o Microsoft.Storage/storageAccounts/fileServices/readFileBackupSemantics/actionMicrosoft.Storage/storageAccounts/fileServices/writeFileBackupSemantics/action si se incluyen en la directiva de RBAC asignada a la identidad autorizada mediante el Authorization encabezado . Disponible para la versión 2022-11-02 y posteriores.
x-ms-allow-trailing-dot: { <Boolean> } Opcional. Versión 2022-11-02 y posteriores. El valor booleano especifica si se debe recortar o no un punto final presente en la dirección URL de la solicitud. Para obtener más información, consulte Nomenclatura y referencia a recursos compartidos, directorios, archivos y metadatos.

Cuerpo de la solicitud

Ninguno.

Response

La respuesta incluye un código de estado HTTP, un conjunto de encabezados de respuesta y un cuerpo de respuesta en formato XML.

status code

Una operación correcta devuelve el código de estado 200 Correcto. Para obtener información sobre los códigos de estado, vea Códigos de estado y de error.

Encabezados de respuesta

La respuesta para esta operación incluye los encabezados siguientes. La respuesta también puede incluir encabezados HTTP adicionales y estándar. Todos los encabezados estándar se ajustan a la especificación del protocolo HTTP/1.1.

Encabezado de respuesta Descripción
Last-Modified La fecha y la hora en la que se modificó por última vez el archivo. Cualquier operación que modifique el archivo, incluida una actualización de los metadatos o propiedades del archivo, cambia la hora de la última modificación del archivo.
ETag ETag contiene un valor que representa la versión del archivo, entre comillas.
x-ms-content-length El tamaño del archivo en bytes. Cuando prevsharesnapshot está presente, el valor describe el tamaño del archivo en sharesnapshot (si el sharesnapshot parámetro de consulta está presente). De lo contrario, describe el tamaño del archivo activo.
x-ms-request-id Este encabezado identifica de forma única la solicitud que se realizó y se puede usar para solucionar problemas de la solicitud. Para más información, consulte Solución de problemas de operaciones de API.
x-ms-version Indica la versión de Azure Files usada para ejecutar la solicitud.
Date o x-ms-date Valor de fecha y hora UTC que indica la hora en la que se inició la respuesta. El servicio genera este valor.
x-ms-client-request-id Puede usar este encabezado para solucionar problemas de solicitudes y respuestas correspondientes. El valor de este encabezado es igual al valor del x-ms-client-request-id encabezado, si está presente en la solicitud. El valor es como máximo 1024 caracteres ASCII visibles. Si el x-ms-client-request-id encabezado no está presente en la solicitud, este encabezado no estará presente en la respuesta.

Response body

El cuerpo de respuesta incluye una lista de intervalos válidos que no se superponen, ordenada por intervalo de direcciones en orden ascendente. El formato del cuerpo de la respuesta es el siguiente.

<?xml version="1.0" encoding="utf-8"?>  
<Ranges>  
  <Range>  
    <Start>Start Byte</Start>  
    <End>End Byte</End>  
  </Range>  
  <Range>  
    <Start>Start Byte</Start>  
    <End>End Byte</End>  
  </Range>  
</Ranges>  

Si se ha borrado todo el conjunto de intervalos del archivo, el cuerpo de la respuesta no incluirá ningún intervalo.

Si prevsharesnapshot se especifica , la respuesta incluye solo las páginas que difieren entre la instantánea de destino (o el archivo activo) y la instantánea anterior. Los intervalos devueltos incluyen ambos intervalos que se actualizaron o que se borraron. El formato de esta respuesta es el siguiente:

<?xml version="1.0" encoding="utf-8"?> 
<Ranges> 
  <Range> 
    <Start>Start Byte</Start> 
    <End>End Byte</Start> 
  </Range> 
  <ClearRange> 
    <Start>Start Byte</Start>
    <End>End Byte</Start> 
  </ClearRange> 
  <Range> 
    <Start>Start Byte</Start> 
    <End>End Byte</Start> 
  </Range> 
</Ranges> 

Si se ha borrado todo el conjunto de páginas del archivo y no se especifica el prevsharesnapshot parámetro , el cuerpo de la respuesta no incluirá ningún intervalo.

Authorization

Solo el propietario de la cuenta puede llamar a esta operación.

Observaciones

Los desplazamientos de byte inicial y final de cada intervalo están incluidos. Consulte los ejemplos de operaciones de actualización de intervalo y operaciones de borrado de intervalo para Put Range. En estos ejemplos se muestra qué intervalos se devuelven si escribe o borra un intervalo de bytes no asignado de 512 del archivo.

Si el archivo está muy fragmentado y tiene un gran número de operaciones de escritura, las solicitudes List Ranges pueden generar errores debido a que se agote el tiempo de espera interno del servidor. Las aplicaciones que recuperan intervalos de un archivo con un gran número de operaciones de escritura deben recuperar un subconjunto de intervalos cada vez.

A partir de la versión 2020-02-10, puede llamar a List Ranges con un prevsharesnapshot parámetro . Esto devuelve los intervalos que difieren entre el archivo activo y una instantánea, o entre dos instantáneas del archivo en instantáneas. Mediante estas diferencias de intervalo, puede recuperar una instantánea incremental de un archivo. Las instantáneas incrementales son una manera rentable de realizar copias de seguridad de archivos si desea implementar su propia solución de copia de seguridad.

Ciertas operaciones de un archivo provocan List Ranges un error cuando se llama a para recuperar una instantánea incremental. El servicio devuelve:

  • 404 (no encontrado) si llama a en un archivo que no existe en una de las instantáneas (o en directo, si sharesnapshot no se especifica).
  • 409 (Conflicto) si llama a en un archivo que era el destino de una copia de sobrescritura después de la instantánea, especificada por prevsharesnapshot.
  • 409 (Conflicto) si llama a en un archivo que se eliminó y volvió a crear con el mismo nombre y ubicación, después de tomar la instantánea especificada por prevsharesnapshot .

Consulte también

Operaciones en archivos