Bagikan melalui


Buat File

Operasi Create File membuat file baru atau mengganti file. Saat Anda memanggil Create File, Anda hanya menginisialisasi file. Untuk menambahkan konten ke file, Anda memanggil operasi Put Range.

Ketersediaan protokol

Protokol berbagi file yang diaktifkan Tersedia
SMB Ya
NFS Tidak ada

Minta

Anda dapat membuat permintaan Create File dengan melakukan hal berikut. Kami menyarankan agar Anda menggunakan HTTPS.

Metode Meminta URI Versi HTTP
PUT https://myaccount.file.core.windows.net/myshare/mydirectorypath/myfile HTTP/1.1

Ganti komponen jalur yang ditampilkan dalam URI permintaan dengan URI Anda sendiri, seperti yang dijelaskan dalam tabel berikut:

Komponen jalur Deskripsi
myaccount Nama akun penyimpanan Anda.
myshare Nama berbagi file Anda.
mydirectorypath Fakultatif. Jalur ke direktori tempat file akan dibuat. Jika jalur direktori dihilangkan, file akan dibuat dalam berbagi yang ditentukan.

Jika direktori ditentukan, direktori tersebut harus sudah ada di dalam berbagi sebelum Anda dapat membuat file.
myfile Nama file yang akan dibuat.

Untuk informasi tentang pembatasan penamaan jalur, lihat Nama dan berbagi referensi, direktori, file, dan metadata.

Parameter URI

Anda dapat menentukan parameter tambahan berikut pada URI permintaan:

Parameter Deskripsi
timeout Fakultatif. Parameter timeout dinyatakan dalam hitung detik. Untuk informasi selengkapnya, lihat Mengatur batas waktu untuk operasi layanan file.

Header permintaan

Header permintaan yang diperlukan dan opsional dijelaskan dalam tabel berikut:

Header permintaan Deskripsi
Authorization Diperlukan. Menentukan skema otorisasi, nama akun, dan tanda tangan. Untuk informasi selengkapnya, lihat Mengotorisasi permintaan ke Azure Storage.
Date atau x-ms-date Diperlukan. Menentukan waktu Waktu Universal Terkoordinasi (UTC) untuk permintaan tersebut. Untuk informasi selengkapnya, lihat Mengotorisasi permintaan ke Azure Storage.
x-ms-version Diperlukan untuk semua permintaan yang diotorisasi. Menentukan versi operasi yang akan digunakan untuk permintaan ini. Untuk informasi selengkapnya, lihat Penerapan Versi untuk layanan Azure Storage.
Content-Length Fakultatif. Harus nol jika ada.
x-ms-content-length: byte value Diperlukan. Header ini menentukan ukuran maksimum untuk file, hingga 4 tebibyte (TiB).
Content-Type atau x-ms-content-type Fakultatif. Tipe konten MIME file. Jenis defaultnya adalah application/octet-stream.
Content-Encoding atau x-ms-content-encoding Fakultatif. Menentukan pengodean konten mana yang telah diterapkan ke file. Nilai ini dikembalikan ke klien ketika operasi Get File dilakukan pada sumber daya file, dan Anda dapat menggunakannya untuk mendekode konten file.
Content-Language atau x-ms-content-language Fakultatif. Menentukan bahasa alami yang digunakan oleh sumber daya ini.
Cache-Control atau x-ms-cache-control Fakultatif. Azure Files menyimpan nilai ini tetapi tidak menggunakan atau mengubahnya.
x-ms-content-md5 Fakultatif. Mengatur hash MD5 file.
x-ms-content-disposition Fakultatif. Mengatur header Content-Disposition file.
x-ms-type: file Diperlukan. Atur header ini ke file.
x-ms-meta-name:value Fakultatif. Pasangan nama-nilai yang terkait dengan file sebagai metadata. Nama metadata harus mematuhi aturan penamaan untuk pengidentifikasi C# .

Catatan: Metadata file yang ditentukan melalui Azure Files tidak dapat diakses dari klien Blok Pesan Server (SMB).
x-ms-file-permission: { inherit ¦ <SDDL> ¦ <binary> } Dalam versi 2019-02-02 hingga 2021-04-10, header ini diperlukan jika x-ms-file-permission-key tidak ditentukan. Pada versi 2021-06-08, kedua header bersifat opsional. Izin ini adalah deskriptor keamanan untuk file yang ditentukan dalam Security Descriptor Definition Language (SDDL) atau (versi 2024-11-04 atau yang lebih baru) dalam format deskriptor keamanan biner yang dikodekan base64. Anda dapat menentukan format mana yang akan digunakan dengan header x-ms-file-permission-format. Anda dapat menggunakan header ini jika ukuran izin adalah 8 kibibyte (KiB) atau kurang. Jika tidak, Anda dapat menggunakan x-ms-file-permission-key. Jika Anda menentukan header, header harus memiliki pemilik, grup, dan daftar kontrol akses diskresi (DACL). Anda dapat meneruskan nilai inherit untuk diwarisi dari direktori induk.
x-ms-file-permission-format: { sddl ¦ binary } Fakultatif. Versi 2024-11-04 atau yang lebih baru. Menentukan apakah nilai yang diteruskan dalam x-ms-file-permission berada dalam SDDL atau dalam format biner. Jika x-ms-file-permission-key diatur ke inherit, header ini tidak boleh diatur. Jika x-ms-file-permission-key diatur ke nilai lain selain inherit, dan jika header ini tidak diatur, nilai default sddl digunakan.
x-ms-file-permission-key: <PermissionKey> Dalam versi 2019-02-02 hingga 2021-04-10, header ini diperlukan jika x-ms-file-permission tidak ditentukan. Pada versi 2021-06-08, kedua header bersifat opsional. Jika tidak ada header yang ditentukan, nilai default inherit digunakan untuk header x-ms-file-permission.

Anda dapat membuat kunci dengan memanggil API Create Permission.
x-ms-file-attributes Diperlukan: versi 2019-02-02 hingga 2021-04-10. Opsional: versi 2021-06-08 dan yang lebih baru. Header ini berisi atribut sistem file yang akan disetel pada file. Untuk informasi selengkapnya, lihat daftar atribut tersedia. Nilai defaultnya adalah None.
x-ms-file-creation-time: { now ¦ <DateTime> } Diperlukan: versi 2019-02-02 hingga 2021-04-10. Opsional: versi 2021-06-08 dan yang lebih baru. Properti waktu pembuatan Waktu Universal Terkoordinasi (UTC) untuk file. Nilai now dapat digunakan untuk menunjukkan waktu permintaan. Nilai defaultnya adalah now.
x-ms-file-last-write-time: { now ¦ <DateTime> } Diperlukan: versi 2019-02-02 hingga 2021-04-10. Opsional: versi 2021-06-08 dan yang lebih baru. Properti penulisan terakhir Waktu Universal Terkoordinasi (UTC) untuk file. Anda dapat menggunakan nilai now untuk menunjukkan waktu permintaan. Nilai defaultnya adalah now.
x-ms-lease-id: <ID> Diperlukan jika file memiliki sewa aktif. Tersedia untuk versi 2019-02-02 dan yang lebih baru.
x-ms-client-request-id Fakultatif. Menyediakan nilai buram yang dihasilkan klien dengan batas karakter 1 kibibyte (KiB) yang dicatat dalam log saat pengelogan dikonfigurasi. Kami sangat menyarankan Anda menggunakan header ini untuk menghubungkan aktivitas sisi klien dengan permintaan yang diterima server. Untuk informasi selengkapnya, lihat Memantau Azure Files.
x-ms-file-change-time: { now ¦ <DateTime> } Fakultatif. Versi 2021-06-08 dan yang lebih baru. Properti waktu perubahan Waktu Universal Terkoordinasi (UTC) untuk file, dalam format ISO 8601. Anda dapat menggunakan nilai now untuk menunjukkan waktu permintaan. Nilai defaultnya adalah now.
x-ms-file-request-intent Diperlukan jika header Authorization menentukan token OAuth. Nilai yang dapat diterima backup. Header ini menentukan bahwa Microsoft.Storage/storageAccounts/fileServices/readFileBackupSemantics/action atau Microsoft.Storage/storageAccounts/fileServices/writeFileBackupSemantics/action harus diberikan jika disertakan dalam kebijakan RBAC yang ditetapkan ke identitas yang diotorisasi menggunakan header Authorization. Tersedia untuk versi 2022-11-02 dan yang lebih baru.
x-ms-allow-trailing-dot: { <Boolean> } Fakultatif. Versi 2022-11-02 dan yang lebih baru. Nilai Boolean menentukan apakah titik berikutnya yang ada dalam url permintaan harus dipangkas atau tidak. Untuk informasi selengkapnya, lihat Penamaan dan referensi berbagi, direktori, file, dan metadata.

Isi permintaan

Tidak.

Permintaan sampel

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=  
  

Jawaban

Respons mencakup kode status HTTP dan sekumpulan header respons.

Kode status

Operasi yang berhasil mengembalikan kode status 201 (Dibuat).

Untuk informasi tentang kode status, lihat Status dan kode kesalahan.

Header respons

Respons untuk operasi ini mencakup header yang dijelaskan dalam tabel berikut. Respons juga dapat menyertakan header HTTP standar tambahan. Semua header standar sesuai dengan spesifikasi protokol HTTP/1.1 .

Header respons Deskripsi
ETag ETag berisi nilai yang mewakili versi file. Nilai diapit dalam tanda kutip.
Last-Modified Mengembalikan tanggal dan waktu saat file terakhir diubah. Format tanggal mengikuti RFC 1123. Untuk informasi selengkapnya, lihat Mewakili nilai tanggal/waktu di header.

Setiap operasi yang memodifikasi direktori atau propertinya memperbarui waktu modifikasi terakhir. Operasi pada file tidak memengaruhi waktu terakhir direktori yang dimodifikasi.
x-ms-request-id Secara unik mengidentifikasi permintaan yang dibuat dan dapat digunakan untuk memecahkan masalah permintaan. Untuk informasi selengkapnya, lihat Memecahkan masalah operasi API
x-ms-version Menunjukkan versi Azure Files yang digunakan untuk menjalankan permintaan.
Date Nilai tanggal/waktu UTC yang dihasilkan oleh layanan, yang menunjukkan waktu ketika respons dimulai.
x-ms-request-server-encrypted: true/false Versi 2017-04-17 dan yang lebih baru. Nilai header ini diatur ke true jika Anda berhasil mengenkripsi konten permintaan dengan menggunakan algoritma yang ditentukan. Jika enkripsi tidak berhasil, nilainya false.
x-ms-file-permission-key Kunci izin file.
x-ms-file-attributes Atribut sistem file pada file. Untuk informasi selengkapnya, lihat daftar atribut tersedia.
x-ms-file-creation-time Nilai tanggal/waktu UTC yang mewakili properti waktu pembuatan untuk file.
x-ms-file-last-write-time Nilai tanggal/waktu UTC yang mewakili properti waktu tulis terakhir untuk file.
x-ms-file-change-time Tanggal/waktu UTC yang menunjukkan properti waktu perubahan untuk file.
x-ms-file-file-id ID file file.
x-ms-file-parent-id ID file induk file.
x-ms-client-request-id Digunakan untuk memecahkan masalah permintaan dan respons yang sesuai. Nilai header ini sama dengan nilai header x-ms-client-request-id jika ada dalam permintaan dan nilai berisi tidak lebih dari 1.024 karakter ASCII yang terlihat. Jika header x-ms-client-request-id tidak ada dalam permintaan, header tersebut tidak ada dalam respons.

Isi respons

Tidak.

Sampel respons

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  

Otorisasi

Hanya pemilik akun yang dapat memanggil operasi ini.

Atribut sistem file

Atribut Atribut file Win32 Definisi
ReadOnly FILE_ATTRIBUTE_READONLY File yang bersifat baca-saja. Aplikasi dapat membaca file, tetapi tidak dapat menulis atau menghapusnya.
Sembunyi FILE_ATTRIBUTE_HIDDEN File disembunyikan. Ini tidak termasuk dalam daftar direktori biasa.
Sistem FILE_ATTRIBUTE_SYSTEM File yang digunakan sistem operasi sebagai bagian dari, atau digunakan secara eksklusif.
Tidak FILE_ATTRIBUTE_NORMAL File yang tidak memiliki atribut lain yang ditetapkan. Atribut ini hanya valid saat digunakan sendiri.
Mengarsipkan FILE_ATTRIBUTE_ARCHIVE File yang merupakan file arsip. Aplikasi biasanya menggunakan atribut ini untuk menandai file untuk pencadangan atau penghapusan.
Sementara FILE_ATTRIBUTE_TEMPORARY File yang sedang digunakan untuk penyimpanan sementara.
Luring FILE_ATTRIBUTE_OFFLINE Data file tidak segera tersedia. Atribut sistem file ini disajikan terutama untuk memberikan kompatibilitas dengan Windows. Azure Files tidak mendukungnya dengan opsi penyimpanan offline.
NotContentIndexed FILE_ATTRIBUTE_NOT_CONTENT_INDEXED File tidak akan diindeks oleh layanan pengindeksan konten.
NoScrubData FILE_ATTRIBUTE_NO_SCRUB_DATA Aliran data pengguna yang tidak dibaca oleh pemindai integritas data latar belakang. Atribut sistem file ini disajikan terutama untuk memberikan kompatibilitas dengan Windows.

Komentar

Untuk membuat file baru, pertama-tama inisialisasi dengan memanggil Create File dan menentukan ukuran maksimumnya, hingga 4 TiB. Saat Anda melakukan operasi ini, jangan sertakan konten dalam isi permintaan. Setelah Anda membuat file, panggil Put Range untuk menambahkan konten ke file atau untuk mengubahnya.

Anda dapat mengubah ukuran file dengan memanggil Set File Properties.

Jika direktori berbagi atau induk tidak ada, maka operasi gagal dengan kode status 412 (Prasyarat Gagal).

Nota

Properti file cache-control, content-type, content-md5, content-encoding, dan content-language terpisah dari properti sistem file yang tersedia untuk klien SMB. Klien SMB tidak dapat membaca, menulis, atau mengubah nilai properti ini.

Untuk membuat file, jika file yang ada memiliki sewa aktif, klien harus menentukan ID sewa yang valid pada permintaan. Jika klien tidak menentukan ID sewa atau menentukan ID sewa yang tidak valid, Azure Files mengembalikan kode status 412 (Prasyarat Gagal). Jika klien menentukan ID sewa tetapi file tidak memiliki sewa aktif, Azure Files mengembalikan kode status 412 (Prasyarat Gagal) dalam instans ini juga. Jika klien menentukan ID sewa pada file yang belum ada, Azure Files mengembalikan kode status 412 (Prasyarat Gagal) untuk permintaan yang dibuat terhadap versi 2019-02-02 dan yang lebih baru.

Jika file yang ada dengan sewa aktif ditimpa oleh operasi Create File, sewa tetap ada pada file yang diperbarui hingga dirilis.

Create File tidak didukung pada rekam jepret berbagi, yang merupakan salinan berbagi baca-saja. Upaya untuk melakukan operasi ini pada rekam jepret berbagi gagal dengan kode status 400 (InvalidQueryParameterValue).

Lihat juga

Operasi di Azure Files