Compartir por


Crear archivo

La operación Create File crea un nuevo archivo o reemplaza un archivo. Cuando se llama a Create File, solo se inicializa el archivo. Para agregar contenido a un archivo, llame a la operación Put Range.

Disponibilidad del protocolo

Protocolo habilitado para recursos compartidos de archivos Disponible
SMB sí
NFS No

Pedir

Puede construir una solicitud Create File haciendo lo siguiente. Se recomienda usar HTTPS.

Método URI de solicitud Versión HTTP
PUT https://myaccount.file.core.windows.net/myshare/mydirectorypath/myfile HTTP/1.1

Reemplace los componentes de ruta de acceso que se muestran en el URI de solicitud por los suyos propios, como se describe en la tabla siguiente:

Componente de ruta de acceso Descripción
myaccount Nombre de la cuenta de almacenamiento.
myshare Nombre del recurso compartido de archivos.
mydirectorypath Opcional. Ruta de acceso al directorio donde se va a crear el archivo. Si se omite la ruta de acceso del directorio, el archivo se creará dentro del recurso compartido especificado.

Si se especifica el directorio, ya debe existir dentro del recurso compartido para poder crear el archivo.
myfile Nombre del archivo que se va a crear.

Para obtener información sobre las restricciones de nomenclatura de rutas de acceso, vea Recursos compartidos de nombres y referencia, directorios, archivos y metadatos.

Parámetros de URI

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

Parámetro Descripción
timeout Opcional. El parámetro timeout se expresa en segundos. Para obtener más información, consulte Establecer tiempos de espera para las operaciones del servicio de archivos.

Encabezados de solicitud

Los encabezados de solicitud obligatorios y opcionales se describen en la tabla siguiente:

Encabezado de solicitud Descripción
Authorization Obligatorio. Especifica el esquema de autorización, el nombre de la cuenta y la firma. Para más información, consulte Autorizar solicitudes a Azure Storage.
Date o x-ms-date Obligatorio. Especifica la hora universal coordinada (UTC) de la solicitud. Para más información, consulte Autorizar solicitudes a Azure Storage.
x-ms-version Necesario para todas las solicitudes autorizadas. Especifica la versión de la operación que se va a usar para esta solicitud. Para más información, consulte Control de versiones de para los servicios de Azure Storage.
Content-Length Opcional. Debe ser cero si está presente.
x-ms-content-length: byte value Obligatorio. Este encabezado especifica el tamaño máximo del archivo, hasta 4 tebibytes (TiB).
Content-Type o x-ms-content-type Opcional. Tipo de contenido MIME del archivo. El tipo predeterminado es application/octet-stream.
Content-Encoding o x-ms-content-encoding Opcional. Especifica qué codificaciones de contenido se han aplicado al archivo. Este valor se devuelve al cliente cuando se realiza la operación Obtener archivo en el recurso de archivo y se puede usar para descodificar el contenido del archivo.
Content-Language o x-ms-content-language Opcional. Especifica los lenguajes naturales que usa este recurso.
Cache-Control o x-ms-cache-control Opcional. Azure Files almacena este valor, pero no lo usa ni lo modifica.
x-ms-content-md5 Opcional. Establece el hash MD5 del archivo.
x-ms-content-disposition Opcional. Establece el encabezado Content-Disposition del archivo.
x-ms-type: file Obligatorio. Establezca este encabezado en file.
x-ms-meta-name:value Opcional. Pares nombre-valor asociados al archivo como metadatos. Los nombres de metadatos deben cumplir las reglas de nomenclatura de los identificadores de C# .

Nota: los metadatos de archivo especificados a través de Azure Files no son accesibles desde un cliente de bloque de mensajes del servidor (SMB).
x-ms-file-permission: { inherit ¦ <SDDL> ¦ <binary> } En la versión 2019-02-02 a 2021-04-10, este encabezado es necesario si no se especifica x-ms-file-permission-key. A partir de la versión 2021-06-08, ambos encabezados son opcionales. Este permiso es el descriptor de seguridad del archivo especificado en el lenguaje de definición de descriptores de seguridad (SDDL) o (versión 2024-11-04 o posterior) en formato de descriptor de seguridad binario base64. Puede especificar el formato que se va a usar con el encabezado x-ms-file-permission-format. Puede usar este encabezado si el tamaño de los permisos es de 8 kibibytes (KiB) o menos. De lo contrario, puede usar x-ms-file-permission-key. Si especifica el encabezado, debe tener un propietario, grupo y lista de control de acceso discrecional (DACL). Puede pasar un valor de inherit para heredar del directorio primario.
x-ms-file-permission-format: { sddl ¦ binary } Opcional. Versión 2024-11-04 o posterior. Especifica si el valor pasado en x-ms-file-permission está en SDDL o en formato binario. Si x-ms-file-permission-key se establece en inherit, este encabezado no debe establecerse. Si x-ms-file-permission-key se establece en cualquier otro valor que no sea inherity si no se establece este encabezado, se usa el valor predeterminado de sddl.
x-ms-file-permission-key: <PermissionKey> En la versión 2019-02-02 a 2021-04-10, este encabezado es necesario si no se especifica x-ms-file-permission. A partir de la versión 2021-06-08, ambos encabezados son opcionales. Si no se especifica ningún encabezado, se usa el valor predeterminado de inherit para el encabezado x-ms-file-permission.

Puede crear la clave llamando a la API de Create Permission.
x-ms-file-attributes Obligatorio: versión 2019-02-02 a 2021-04-10. Opcional: versión 2021-06-08 y posteriores. Este encabezado contiene los atributos del sistema de archivos que se van a establecer en el archivo. Para obtener más información, consulte la lista de atributos disponibles . El valor predeterminado es None.
x-ms-file-creation-time: { now ¦ <DateTime> } Obligatorio: versión 2019-02-02 a 2021-04-10. Opcional: versión 2021-06-08 y posteriores. Propiedad de hora universal coordinada (UTC) para el archivo. Se puede usar un valor de now para indicar la hora de la solicitud. El valor predeterminado es now.
x-ms-file-last-write-time: { now ¦ <DateTime> } Obligatorio: versión 2019-02-02 a 2021-04-10. Opcional: versión 2021-06-08 y posteriores. La propiedad de última escritura de la hora universal coordinada (UTC) del archivo. Puede usar un valor de now para indicar la hora de la solicitud. El valor predeterminado es now.
x-ms-lease-id: <ID> Obligatorio si el archivo tiene una concesión activa. Disponible para la versión 2019-02-02 y posteriores.
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 más información, consulte Monitor Azure Files.
x-ms-file-change-time: { now ¦ <DateTime> } Opcional. Versión 2021-06-08 y posteriores. La propiedad Hora universal coordinada (UTC) cambia la propiedad de hora para el archivo, en el formato ISO 8601. Puede usar un valor de now para indicar la hora de la solicitud. El valor predeterminado es now.
x-ms-file-request-intent Obligatorio si Authorization encabezado especifica un token de OAuth. El valor aceptable es backup. Este encabezado especifica que se debe conceder el Microsoft.Storage/storageAccounts/fileServices/readFileBackupSemantics/action o Microsoft.Storage/storageAccounts/fileServices/writeFileBackupSemantics/action si se incluyen en la directiva de RBAC asignada a la identidad autorizada mediante el encabezado Authorization. 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 solicitud. Para obtener más información, vea Asignar nombres y hacer referencia a recursos compartidos, directorios, archivos y metadatos.

Cuerpo de la solicitud

Ninguno.

Solicitud de ejemplo

Request Syntax:  
PUT https://myaccount.file.core.windows.net/myshare/myfile HTTP/1.1  
  
Request Headers:  
x-ms-version: 2020-02-10
x-ms-date: Mon, 27 Jan 2014 22:41:55 GMT  
Content-Type: text/plain; charset=UTF-8  
x-ms-content-length: 1024  
Authorization: SharedKey myaccount:YhuFJjN4fAR8/AmBrqBz7MG2uFinQ4rkh4dscbj598g=  
  

Respuesta

La respuesta incluye un código de estado HTTP y un conjunto de encabezados de respuesta.

Código de estado

Una operación correcta devuelve el código de estado 201 (creado).

Para obtener información sobre los códigos de estado, vea Códigos de estado y de error.

Encabezados de respuesta

La respuesta de esta operación incluye los encabezados que se describen en la tabla siguiente. La respuesta también puede incluir encabezados HTTP estándar adicionales. Todos los encabezados estándar se ajustan a la especificación del protocolo HTTP/1.1 de .

Encabezado de respuesta Descripción
ETag La ETag contiene un valor que representa la versión del archivo. El valor se incluye entre comillas.
Last-Modified Devuelve la fecha y hora en que se modificó por última vez el archivo. El formato de fecha sigue a RFC 1123. Para obtener más información, vea Representar valores de fecha y hora en encabezados.

Cualquier operación que modifique el directorio o sus propiedades actualiza la hora de la última modificación. Las operaciones en archivos no afectan a la hora de la última modificación del directorio.
x-ms-request-id Identifica de forma única la solicitud que se realizó y se puede usar para solucionar problemas de la solicitud. Para obtener más información, consulte Solución de problemas de operaciones de API
x-ms-version Indica la versión de Azure Files que se usa para ejecutar la solicitud.
Date Valor de fecha y hora UTC generado por el servicio, que indica la hora en que se inició la respuesta.
x-ms-request-server-encrypted: true/false Versión 2017-04-17 y posteriores. El valor de este encabezado se establece en true si ha cifrado correctamente el contenido de la solicitud mediante el algoritmo especificado. Si el cifrado no se realiza correctamente, el valor es false.
x-ms-file-permission-key Clave del permiso del archivo.
x-ms-file-attributes Atributos del sistema de archivos en el archivo. Para obtener más información, consulte la lista de atributos disponibles .
x-ms-file-creation-time Valor de fecha y hora UTC que representa la propiedad de hora de creación del archivo.
x-ms-file-last-write-time Valor de fecha y hora UTC que representa la propiedad de hora de última escritura del archivo.
x-ms-file-change-time Fecha y hora UTC que representa la propiedad de hora de cambio del archivo.
x-ms-file-file-id Identificador de archivo del archivo.
x-ms-file-parent-id Identificador de archivo primario del archivo.
x-ms-client-request-id Se usa para solucionar problemas de solicitudes y sus respuestas correspondientes. El valor de este encabezado es igual al valor del encabezado x-ms-client-request-id si está presente en la solicitud y el valor no contiene más de 1024 caracteres ASCII visibles. Si el encabezado x-ms-client-request-id no está presente en la solicitud, no está presente en la respuesta.

Cuerpo de la respuesta

Ninguno.

Respuesta de ejemplo

Response Status:  
HTTP/1.1 201 Created  
  
Response Headers:  
Transfer-Encoding: chunked  
Date: Mon, 27 Jan 2014 23:00:12 GMT  
ETag: "0x8CB14C3E29B7E82"  
Last-Modified: Mon, 27 Jan 2014 23:00:06 GMT  
x-ms-version: 2014-02-14  
Server: Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0  

Autorización

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

Atributos del sistema de archivos

Atributo Atributo de archivo Win32 Definición
ReadOnly FILE_ATTRIBUTE_READONLY Un archivo que es de solo lectura. Las aplicaciones pueden leer el archivo, pero no pueden escribir en él ni eliminarlo.
Escondido FILE_ATTRIBUTE_HIDDEN El archivo está oculto. No se incluye en una lista de directorios normal.
Sistema FILE_ATTRIBUTE_SYSTEM Un archivo del que el sistema operativo usa una parte de o usa exclusivamente.
Ninguno FILE_ATTRIBUTE_NORMAL Archivo que no tiene otros atributos establecidos. Este atributo solo es válido cuando se usa solo.
Archivo FILE_ATTRIBUTE_ARCHIVE Un archivo que es un archivo de archivo. Normalmente, las aplicaciones usan este atributo para marcar los archivos de copia de seguridad o eliminación.
Temporal FILE_ATTRIBUTE_TEMPORARY Un archivo que se usa para el almacenamiento temporal.
Sin conexión FILE_ATTRIBUTE_OFFLINE Los datos de un archivo no están disponibles inmediatamente. Este atributo del sistema de archivos se presenta principalmente para proporcionar compatibilidad con Windows. Azure Files no lo admite con opciones de almacenamiento sin conexión.
NotContentIndexed FILE_ATTRIBUTE_NOT_CONTENT_INDEXED El servicio de indexación de contenido no indexa el archivo.
NoScrubData FILE_ATTRIBUTE_NO_SCRUB_DATA Flujo de datos de usuario que no leer el analizador de integridad de datos en segundo plano. Este atributo del sistema de archivos se presenta principalmente para proporcionar compatibilidad con Windows.

Observaciones

Para crear un nuevo archivo, primero inicialícelo llamando a Create File y especificando su tamaño máximo, hasta 4 TiB. Al realizar esta operación, no incluya contenido en el cuerpo de la solicitud. Después de crear el archivo, llame a Put Range para agregar contenido al archivo o para modificarlo.

Puede cambiar el tamaño del archivo llamando a Set File Properties.

Si el recurso compartido o el directorio primario no existe, se produce un error en la operación con el código de estado 412 (error de condición previa).

Nota

Las propiedades del archivo cache-control, content-type, content-md5, content-encodingy content-language son independientes de las propiedades del sistema de archivos que están disponibles para los clientes SMB. Los clientes SMB no pueden leer, escribir o modificar estos valores de propiedad.

Para crear el archivo, si el archivo existente tiene una concesión activa, el cliente debe especificar un identificador de concesión válido en la solicitud. Si el cliente no especifica un identificador de concesión o especifica un identificador de concesión no válido, Azure Files devuelve el código de estado 412 (error de condición previa). Si el cliente especifica un identificador de concesión, pero el archivo no tiene una concesión activa, Azure Files devuelve el código de estado 412 (error de condición previa) en esta instancia también. Si el cliente especifica un identificador de concesión en un archivo que aún no existe, Azure Files devuelve el código de estado 412 (error de condición previa) para las solicitudes realizadas en la versión 2019-02-02 y posteriores.

Si una operación de Create File sobrescribe un archivo existente con una concesión activa, la concesión persiste en el archivo actualizado hasta que se libere.

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

Consulte también

Operaciones de en Azure Files