Bagikan melalui


Letakkan Blob

Operasi ini Put Blob membuat blob blok, halaman, atau tambahan baru, atau memperbarui konten blob blok yang ada. Operasi akan Put Blob menimpa semua konten blob yang ada dengan nama yang sama.

Saat Anda memperbarui blob blok yang ada, Anda menimpa metadata yang ada pada blob. Konten blob yang ada ditimpa dengan konten blob baru. Pembaruan parsial tidak didukung dengan Put Blob. Untuk melakukan pembaruan parsial konten blob blok, gunakan operasi Put Block List .

Anda dapat membuat blob tambahan dalam versi 2015-02-21 dan yang lebih baru saja.

Panggilan ke a Put Blob untuk membuat blob halaman atau blob tambahan hanya menginisialisasi blob. Jika blob sudah ada, isinya akan dihapus. Untuk menambahkan konten ke blob halaman, panggil operasi Put Page . Untuk menambahkan konten ke blob penambahan, panggil operasi Blokir Tambahkan .

Permohonan

Anda dapat membuat permintaan Put Blob sebagai berikut. Kami menyarankan agar Anda menggunakan HTTPS. Ganti akun saya dengan nama akun penyimpanan Anda:

URI permintaan metode PUT Versi HTTP
https://myaccount.blob.core.windows.net/mycontainer/myblob HTTP/1.1

Permintaan layanan penyimpanan yang ditimulasi

Saat Anda membuat permintaan terhadap layanan penyimpanan yang diemulasi, tentukan nama host emulator dan port layanan Blob sebagai 127.0.0.1:10000, diikuti dengan nama akun penyimpanan yang diemulasi:

URI permintaan metode PUT Versi HTTP
http://127.0.0.1:10000/devstoreaccount1/mycontainer/myblob HTTP/1.1

Emulator penyimpanan hanya mendukung ukuran blob hingga 2 gibibyte (GiB).

Untuk informasi selengkapnya, lihat Menggunakan emulator Azurite untuk pengembangan Azure Storage lokal.

URI Parameter

Parameter tambahan berikut dapat ditentukan pada URI permintaan:

Pengaturan Description
timeout Optional. Parameter dinyatakan timeout dalam detik. Untuk informasi selengkapnya, lihat Mengatur batas waktu untuk operasi layanan Blob.

Header permintaan (semua jenis blob)

Header permintaan yang diperlukan dan opsional untuk semua jenis blob dijelaskan dalam tabel berikut:

Tajuk permintaan Description
Authorization Dibutuhkan. Menentukan skema otorisasi, nama akun, dan tanda tangan. Untuk informasi selengkapnya, lihat Mengotorisasi permintaan ke Azure Storage.
Date atau x-ms-date Dibutuhkan. Menentukan Waktu Universal Terkoordinasi (UTC) untuk permintaan tersebut. Untuk informasi selengkapnya, lihat Mengotorisasi permintaan ke Azure Storage.
x-ms-version Diperlukan untuk semua permintaan resmi. Menentukan versi operasi yang akan digunakan untuk permintaan ini. Untuk informasi selengkapnya, lihat Penerapan versi untuk layanan Azure Storage.
Content-Length Dibutuhkan. Lamanya permintaan.

Untuk blob halaman atau blob penambahan, nilai header ini harus diatur ke nol, karena Put Blob hanya digunakan untuk menginisialisasi blob. Untuk menulis konten ke blob halaman yang ada, panggil Put Page. Untuk menulis konten ke blob penambahan, panggil Blok Tambahkan.
Content-Type Optional. Jenis konten MIME dari blob. Jenis defaultnya adalah application/octet-stream.
Content-Encoding Optional. Menentukan pengodean konten mana yang telah diterapkan ke blob. Nilai ini dikembalikan ke klien saat operasi Get Blob dilakukan pada sumber daya blob. Saat nilai ini dikembalikan, klien dapat menggunakannya untuk memecahkan kode konten blob.
Content-Language Optional. Menentukan bahasa alami yang digunakan oleh sumber daya ini.
Content-MD5 Optional. Hash MD5 dari konten blob. Hash ini digunakan untuk memverifikasi integritas blob selama transportasi. Saat header ini ditentukan, layanan penyimpanan memeriksa hash yang telah tiba terhadap yang dikirim. Jika kedua hash tidak cocok, operasi gagal dengan kode kesalahan 400 (Permintaan Buruk).

Ketika header dihilangkan dalam versi 2012-02-12 atau yang lebih baru, Blob Storage menghasilkan hash MD5.

Hasil dari Get Blob, Get Blob Properties, dan List Blobs menyertakan hash MD5.
x-ms-content-crc64 Optional. Hash CRC64 dari konten blob. Hash ini digunakan untuk memverifikasi integritas blob selama transportasi. Saat header ini ditentukan, layanan penyimpanan memeriksa hash yang telah tiba terhadap yang dikirim. Jika kedua hash tidak cocok, operasi gagal dengan kode kesalahan 400 (Permintaan Buruk). Header ini didukung dalam versi 02-02-2019 dan yang lebih baru.

Jika header Content-MD5 dan x-ms-content-crc64 ada, permintaan gagal dengan 400 (Permintaan Buruk).
Cache-Control Optional. Blob Storage menyimpan nilai ini tetapi tidak menggunakan atau memodifikasinya.
x-ms-blob-content-type Optional. Atur jenis konten blob.
x-ms-blob-content-encoding Optional. Atur pengkodean konten blob.
x-ms-blob-content-language Optional. Atur bahasa konten blob.
x-ms-blob-content-md5 Optional. Atur hash MD5 blob. Untuk BlockBlob, header ini lebih diutamakan Content-MD5 saat memverifikasi integritas blob selama transportasi. Untuk PageBlob dan AppendBlob, header ini secara langsung mengatur hash MD5 blob.
x-ms-blob-cache-control Optional. Mengatur kontrol cache blob.
x-ms-blob-type: <BlockBlob ¦ PageBlob ¦ AppendBlob> Dibutuhkan. Menentukan jenis blob yang akan dibuat: blob blok, blob halaman, atau blob tambah. Dukungan untuk membuat blob tambahan hanya tersedia dalam versi 2015-02-21 dan yang lebih baru.
x-ms-meta-name:value Optional. Pasangan nama-nilai yang terkait dengan blob sebagai metadata.

Catatan: Pada versi 2009-09-19, nama metadata harus mematuhi aturan penamaan untuk pengidentifikasi C#.
x-ms-encryption-scope Optional. Menunjukkan cakupan enkripsi yang akan digunakan untuk mengenkripsi konten permintaan. Header ini didukung dalam versi 2019-02-02 dan yang lebih baru.
x-ms-encryption-context Optional. Defaultnya adalah "Kosong". Jika nilainya ditetapkan, itu akan mengatur metadata sistem blob. Panjang maks-1024. Hanya valid saat Namespace Hierarki diaktifkan untuk akun tersebut. Header ini didukung dalam versi 2021-08-06 dan yang lebih baru.
x-ms-tags Optional. Mengatur tag yang dikodekan string kueri yang diberikan pada blob. Lihat Keterangan untuk informasi tambahan. Didukung dalam versi 2019-12-12 dan yang lebih baru.
x-ms-lease-id:<ID> Diperlukan jika blob memiliki sewa aktif. Untuk melakukan operasi ini pada blob dengan sewa aktif, tentukan ID sewa yang valid untuk header ini.
x-ms-blob-content-disposition Optional. Mengatur header blob Content-Disposition . Tersedia untuk versi 2013-08-15 dan yang lebih baru.

Bidang Content-Disposition header respons menyampaikan informasi tambahan tentang cara memproses payload respons, dan Anda dapat menggunakannya untuk melampirkan metadata tambahan. Misalnya, jika header diatur ke attachment, ini menunjukkan bahwa agen pengguna tidak boleh menampilkan respons. Sebagai gantinya, itu harus menampilkan dialog Simpan Sebagai dengan nama file selain nama blob yang ditentukan.

Respons dari operasi Get Blob dan Get Blob Properties menyertakan content-disposition header.
Origin Optional. Menentukan asal dari mana permintaan dikeluarkan. Kehadiran header ini menghasilkan header berbagi sumber daya lintas asal (CORS) pada respons. Untuk informasi selengkapnya, lihat Dukungan CORS untuk layanan Azure Storage.
x-ms-client-request-id Optional. Menyediakan nilai buram yang dihasilkan klien dengan batas karakter 1 kibibyte (KiB) yang dicatat dalam log analitik saat pengelogan dikonfigurasi. Kami sangat menyarankan Anda menggunakan header ini untuk menghubungkan aktivitas sisi klien dengan permintaan yang diterima server. Untuk informasi selengkapnya, lihat Tentang pengelogan analitik Penyimpanan.
x-ms-access-tier Optional. Tingkat yang akan diatur pada gumpalan. Untuk blob halaman pada akun Premium Storage hanya dengan versi 2017-04-17 dan yang lebih baru. Untuk daftar lengkap tingkat yang didukung blob halaman, lihat Penyimpanan premium performa tinggi dan disk terkelola untuk komputer virtual (VM). Untuk blob blok, didukung pada penyimpanan blob atau akun v2 tujuan umum hanya dengan versi 2018-11-09 dan yang lebih baru. Nilai yang valid adalah Hot, , CoolCold, Smart dan Archive.
Catatan: tingkatCold didukung untuk versi 2021-12-02 dan yang lebih baru. Smart Tingkat didukung untuk versi 2026-02-06 dan yang lebih baru, dan saat ini dalam pratinjau publik
Untuk informasi terperinci tentang tingkatan blob blok, lihat Tingkat penyimpanan blob.
x-ms-immutability-policy-until-date Versi 2020-06-12 dan yang lebih baru. Menentukan tanggal retensi-sampai yang akan ditetapkan pada blob. Ini adalah tanggal hingga blob dapat dilindungi agar tidak dimodifikasi atau dihapus. Mengikuti format RFC1123.
x-ms-immutability-policy-mode Versi 2020-06-12 dan yang lebih baru. Menentukan mode kebijakan kekekalan yang akan diatur pada blob. Nilai yang berlaku adalah unlocked atau locked. unlockedDengan , pengguna dapat mengubah kebijakan dengan menambah atau mengurangi tanggal retensi. lockedDengan , tindakan ini dilarang.
x-ms-legal-hold Versi 2020-06-12 dan yang lebih baru. Menentukan pembekuan hukum yang akan diatur pada blob. Nilai yang berlaku adalah true atau false.
x-ms-expiry-option Optional. Versi 2023-08-03 dan yang lebih baru. Menentukan opsi tanggal kedaluwarsa untuk permintaan. Untuk informasi selengkapnya, lihat ExpiryOption. Header ini valid untuk akun dengan namespace hierarkis diaktifkan.
x-ms-expiry-time Optional. Versi 2023-08-03 dan yang lebih baru. Menentukan waktu ketika blob diatur untuk kedaluwarsa. Format tanggal kedaluwarsa bervariasi sesuai dengan x-ms-expiry-option. Untuk informasi selengkapnya, lihat ExpiryOption. Header ini valid untuk akun dengan namespace hierarkis diaktifkan.

Operasi ini juga mendukung penggunaan header bersyarat untuk menulis blob hanya jika kondisi tertentu terpenuhi. Untuk informasi selengkapnya, lihat Menentukan header bersyarat untuk operasi Blob Storage.

Header permintaan (hanya blob halaman)

Header permintaan yang hanya berlaku untuk operasi pada blob halaman dijelaskan dalam tabel berikut:

Tajuk permintaan Description
x-ms-blob-content-length: bytes Diperlukan untuk blob halaman. Header ini menentukan ukuran maksimum untuk blob halaman, hingga 8 tebibyte (TiB). Ukuran blob halaman harus disejajarkan ke batas 512 byte.

Jika header ini ditentukan untuk blob blok atau blob penambahan, Blob Storage mengembalikan kode status 400 (Permintaan Buruk).
x-ms-blob-sequence-number: <num> Optional. Atur untuk blob halaman saja. Nomor urut adalah nilai yang dikontrol pengguna yang dapat Anda gunakan untuk melacak permintaan. Nilai nomor urut harus dari 0 hingga 2^63 - 1. Nilai defaultnya adalah 0.
x-ms-access-tier Versi 2017-04-17 dan yang lebih baru. Untuk blob halaman pada akun penyimpanan premium saja. Menentukan tingkat yang akan diatur pada blob. Untuk daftar lengkap tingkat yang didukung, lihat Penyimpanan premium performa tinggi dan disk terkelola untuk VM.
x-ms-client-request-id Header ini dapat 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 akan ada dalam respons.

Header permintaan (kunci enkripsi yang disediakan pelanggan)

Pada versi 2019-02-02, header berikut dapat ditentukan pada permintaan untuk mengenkripsi blob dengan kunci yang disediakan pelanggan. Enkripsi dengan kunci yang disediakan pelanggan (dan kumpulan header yang sesuai) bersifat opsional.

Tajuk permintaan Description
x-ms-encryption-key Dibutuhkan. Kunci enkripsi AES-256 yang dikodekan Base64.
x-ms-encryption-key-sha256 Dibutuhkan. Hash SHA256 yang dikodekan Base64 dari kunci enkripsi.
x-ms-encryption-algorithm: AES256 Dibutuhkan. Menentukan algoritme yang akan digunakan untuk enkripsi. Nilai header ini harus .AES256

Header permintaan (isi terstruktur, blob blok saja)

Pada versi 05-01-2025, header berikut dapat ditentukan pada permintaan untuk memanfaatkan format isi terstruktur. Ini hanya berlaku untuk blob blok.

Tajuk permintaan Description
Content-Length Dibutuhkan. Harus panjang permintaan yang dikodekan (tidak hanya panjang konten blob).

Jika nilai header tidak cocok dengan panjang yang diharapkan dari permintaan yang dikodekan, operasi gagal dengan kode kesalahan 400 (Permintaan Buruk).
x-ms-structured-body Dibutuhkan. Harus disertakan jika format pesan terstruktur. Nilai header ini berisi versi dan properti skema pesan.

Saat ini, satu-satunya nilai yang didukung adalah XSM/1.0; properties=crc64, yang menunjukkan permintaan menggunakan segmen checksum crc64 dalam pesan yang dikodekan. Jika nilainya tidak cocok dengan ini, operasi gagal dengan kode kesalahan 400 (Permintaan Buruk). Permintaan juga akan gagal jika konten yang disediakan dalam permintaan tidak cocok dengan checksum yang disediakan untuk segmen tertentu.
x-ms-structured-content-length Dibutuhkan. Harus disertakan jika format pesan terstruktur. Nilai header ini adalah panjang konten blob dan akan selalu lebih kecil dari Content-Length nilai header karena pengodean pesan.

Jika nilai header tidak cocok dengan panjang konten blob yang disediakan dalam permintaan, operasi gagal dengan kode kesalahan 400 (Permintaan Buruk).

Isi dari permintaan

Untuk blob blok, isi permintaan berisi konten blob.

Untuk blob halaman atau blob tambahan, isi permintaan kosong.

Permohonan sampel

Contoh berikut menunjukkan permintaan untuk membuat blob blok:

Request Syntax:  
PUT https://myaccount.blob.core.windows.net/mycontainer/myblockblob HTTP/1.1  
  
Request Headers:  
x-ms-version: 2015-02-21  
x-ms-date: <date>  
Content-Type: text/plain; charset=UTF-8  
x-ms-blob-content-disposition: attachment; filename="fname.ext"  
x-ms-blob-type: BlockBlob  
x-ms-meta-m1: v1  
x-ms-meta-m2: v2  
x-ms-expiry-option: RelativeToNow
x-ms-expiry-time: 30000
Authorization: SharedKey myaccount:YhuFJjN4fAR8/AmBrqBz7MG2uFinQ4rkh4dscbj598g=  
Content-Length: 11  
  
Request Body:  
hello world

Permintaan sampel ini membuat blob halaman dan menentukan ukuran maksimumnya sebagai 1.024 byte. Untuk menambahkan konten ke blob halaman, Anda harus memanggil Put Page:

Request Syntax:  
PUT https://myaccount.blob.core.windows.net/mycontainer/mypageblob HTTP/1.1  
  
Request Headers:  
x-ms-version: 2015-02-21  
x-ms-date: <date>  
Content-Type: text/plain; charset=UTF-8  
x-ms-blob-type: PageBlob  
x-ms-blob-content-length: 1024  
x-ms-blob-sequence-number: 0  
Authorization: SharedKey   
Origin: http://contoso.com  
Vary: Origin  
myaccount:YhuFJjN4fAR8/AmBrqBz7MG2uFinQ4rkh4dscbj598g=  
Content-Length: 0  

Permintaan sampel ini membuat blob penambahan. Untuk menambahkan konten ke blob penambahan, Anda harus memanggil Blok Tambah:

Request Syntax:  
PUT https://myaccount.blob.core.windows.net/mycontainer/myappendblob HTTP/1.1  
  
Request Headers:  
x-ms-version: 2015-02-21  
x-ms-date: <date>  
Content-Type: text/plain; charset=UTF-8  
x-ms-blob-type: AppendBlob  
Authorization: SharedKey myaccount:YhuFJjN4fAR8/AmBrqBz7MG2uFinQ4rkh4dscbj598g=  
Origin: http://contoso.com  
Vary: Origin  
Content-Length: 0  

Jawaban

Respons mencakup kode status HTTP dan sekumpulan header respons.

Kode status

Operasi yang berhasil mengembalikan kode status 201 (Dibuat).

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

Tajuk respons

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

Respons Header Description
ETag Berisi nilai yang dapat digunakan klien untuk melakukan operasi bersyarat PUT dengan menggunakan header permintaan If-Match . Jika versi permintaan adalah 2011-08-18 atau yang lebih baru, nilai ETag diapit dalam tanda kutip.
Last-Modified Tanggal/waktu ketika blob terakhir diubah. Format tanggal mengikuti RFC 1123. Untuk informasi selengkapnya, lihat Mewakili nilai tanggal/waktu dalam header.

Setiap operasi tulis pada blob (termasuk pembaruan pada metadata atau properti blob) mengubah waktu modifikasi terakhir blob.
Content-MD5 Dikembalikan untuk blob blok sehingga klien dapat memeriksa integritas konten pesan. Nilai yang Content-MD5 dikembalikan dihitung oleh Blob Storage. Dalam versi 2012-02-12 dan yang lebih baru, header ini dikembalikan bahkan ketika permintaan tidak menyertakan Content-MD5 atau x-ms-blob-content-md5 header.
x-ms-content-crc64 Dikembalikan untuk blob blok sehingga klien dapat memeriksa integritas konten pesan. Nilai yang x-ms-content-crc64 dikembalikan dihitung oleh Blob Storage. Header ini selalu dikembalikan pada versi 2019-02-02.
x-ms-request-id Mengidentifikasi permintaan yang dibuat secara unik, dan Anda dapat menggunakannya untuk memecahkan masalah permintaan. Untuk informasi selengkapnya, lihat Memecahkan masalah operasi API.
x-ms-version Menunjukkan versi Blob Storage yang digunakan untuk mengeksekusi permintaan. Dikembalikan untuk permintaan yang dibuat terhadap versi 2009-09-19 dan yang lebih baru.
Date Nilai tanggal/waktu UTC yang dihasilkan oleh layanan, yang menunjukkan waktu ketika respons dimulai.
Access-Control-Allow-Origin Dikembalikan jika permintaan menyertakan Origin header dan CORS diaktifkan dengan aturan yang cocok. Header ini mengembalikan nilai header permintaan asal jika ada kecocokan.
Access-Control-Expose-Headers Dikembalikan jika permintaan menyertakan Origin header dan CORS diaktifkan dengan aturan yang cocok. Mengembalikan daftar header respons yang akan diekspos ke klien atau penerbit permintaan.
Access-Control-Allow-Credentials Dikembalikan jika permintaan menyertakan Origin header dan CORS diaktifkan dengan aturan pencocokan yang tidak mengizinkan semua asal. Header ini diatur ke true.
x-ms-request-server-encrypted: true/false Versi 2015-12-11 dan yang lebih baru. Nilai header ini diatur ke true jika konten permintaan berhasil dienkripsi dengan menggunakan algoritme yang ditentukan. Jika tidak, nilainya adalah false.
x-ms-encryption-key-sha256 Versi 2019-02-02 dan yang lebih baru. Dikembalikan jika permintaan menggunakan kunci yang disediakan pelanggan untuk enkripsi, sehingga klien dapat memastikan bahwa konten permintaan berhasil dienkripsi dengan menggunakan kunci yang disediakan.
x-ms-encryption-scope Versi 2019-02-02 dan yang lebih baru. Dikembalikan jika permintaan menggunakan cakupan enkripsi, sehingga klien dapat memastikan konten permintaan berhasil dienkripsi dengan menggunakan cakupan enkripsi.
x-ms-version-id: <DateTime> Versi 2019-12-12 dan yang lebih baru. Header ini mengembalikan nilai buram DateTime yang secara unik mengidentifikasi blob. Nilai header ini menunjukkan versi blob, dan dapat digunakan dalam permintaan berikutnya untuk mengakses blob.
x-ms-structured-body Dikembalikan jika permintaan diproses sebagai permintaan isi terstruktur. Nilai header ini sama dengan nilai yang dikirim dalam permintaan, yang saat ini harus .XSM/1.0; properties=crc64

Badan respons

Tidak ada.

Contoh tanggapan

Response Status:  
HTTP/1.1 201 Created  
  
Response Headers:  
Transfer-Encoding: chunked  
Content-MD5: sQqNsWTgdUEFt6mb5y4/5Q==  
x-ms-content-crc64: 77uWZTolTHU
Date: <date>  
ETag: "0x8CB171BA9E94B0B"  
Last-Modified: <date>  
Access-Control-Allow-Origin: http://contoso.com  
Access-Control-Expose-Headers: Content-MD5  
Access-Control-Allow-Credentials: True  
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0  
x-ms-version-id: <DateTime>  

Authorization

Otorisasi diperlukan saat memanggil operasi akses data apa pun di Azure Storage. Anda dapat mengotorisasi operasi Put Blob seperti yang dijelaskan di bawah ini.

Jika permintaan menentukan tag dengan x-ms-tags header permintaan, pemanggil harus memenuhi persyaratan otorisasi operasi Set Blob Tags .

Penting

Microsoft merekomendasikan penggunaan ID Microsoft Entra dengan identitas terkelola untuk mengotorisasi permintaan ke Azure Storage. MICROSOFT Entra ID menyediakan keamanan yang unggul dan kemudahan penggunaan dibandingkan dengan otorisasi Kunci Bersama.

Azure Storage mendukung penggunaan ID Microsoft Entra untuk mengotorisasi permintaan ke data blob. Dengan MICROSOFT Entra ID, Anda dapat menggunakan kontrol akses berbasis peran Azure (Azure RBAC) untuk memberikan izin kepada prinsip keamanan. Prinsip keamanan mungkin pengguna, grup, perwakilan layanan aplikasi, atau identitas terkelola Azure. Prinsip keamanan diautentikasi oleh MICROSOFT Entra ID untuk mengembalikan token OAuth 2.0. Token kemudian dapat digunakan untuk mengotorisasi permintaan terhadap layanan Blob.

Untuk mempelajari selengkapnya tentang otorisasi menggunakan ID Microsoft Entra, lihat Mengotorisasi akses ke blob menggunakan ID Microsoft Entra.

Permissions

Tercantum di bawah ini adalah tindakan RBAC yang diperlukan untuk pengguna, grup, identitas terkelola, atau perwakilan layanan Microsoft Entra untuk memanggil operasi Put Blob, dan peran Azure RBAC bawaan yang paling tidak istimewa yang mencakup tindakan ini:

Untuk mempelajari selengkapnya tentang menetapkan peran menggunakan Azure RBAC, lihat Menetapkan peran Azure untuk akses ke data blob.

Komentar

Saat membuat blob, Anda harus menentukan apakah itu blob blok, blob tambah, atau blob halaman dengan menentukan nilai x-ms-blob-type header. Setelah blob dibuat, jenis blob tidak dapat diubah kecuali dihapus dan dibuat ulang.

Tabel berikut menjelaskan ukuran blok dan blob maksimum yang diizinkan, berdasarkan versi layanan:

Versi layanan Ukuran blok maksimum (melalui)Put Block Ukuran blob maksimum (melalui Put Block List) Ukuran blob maksimum melalui operasi tulis tunggal (melalui Put Blob)
Versi 2019-12-12 dan yang lebih baru 4.000 mebibyte (MiB) Sekitar 190,7 TiB (4.000 MiB × 50.000 blok) 5.000 MiB
Versi 2016-05-31 hingga 2019-07-07 100 MiB Sekitar 4,75 TiB (100 MiB × 50.000 blok) 256 MiB
Versi lebih awal dari 31-05-2016 4 MiB Sekitar 195 GiB (4 MiB × 50.000 blok) 64 MiB

Jika Anda mencoba mengunggah blob blok yang lebih besar dari ukuran maksimum yang diizinkan untuk versi layanan tersebut atau blob halaman yang lebih besar dari 8 TiB, layanan mengembalikan kode status 413 (Entitas Permintaan Terlalu Besar). Blob Storage juga mengembalikan informasi tambahan tentang kesalahan dalam respons, termasuk ukuran blob maksimum yang diizinkan, dalam byte.

Untuk membuat blob halaman baru, pertama-tama inisialisasi blob dengan memanggil Put Blob, lalu tentukan ukuran maksimumnya, hingga 8 TiB. Saat Anda membuat blob halaman, jangan sertakan konten dalam isi permintaan. Setelah blob dibuat, panggil Put Page untuk menambahkan konten ke blob atau untuk memodifikasinya.

Untuk membuat blob penambahan baru, panggil Put Blob untuk membuatnya dengan panjang konten 0 byte. Setelah blob penambahan dibuat, panggil Blok Tambahkan untuk menambahkan konten ke bagian akhirnya.

Jika Anda memanggil Put Blob untuk menimpa blob yang ada dengan nama yang sama, rekam jepret apa pun yang terkait dengan blob asli akan dipertahankan. Untuk menghapus rekam jepret terkait, pertama-tama panggil Hapus Blob, lalu panggil Put Blob untuk membuat ulang blob.

Properti kustom blob

Blob memiliki properti kustom (diatur melalui header) yang dapat Anda gunakan untuk menyimpan nilai yang terkait dengan header HTTP standar. Anda selanjutnya dapat membaca nilai-nilai ini dengan memanggil Dapatkan Properti Blob, atau memodifikasinya dengan memanggil Atur Properti Blob. Header properti kustom dan header HTTP standar yang sesuai tercantum dalam tabel berikut:

Tajuk HTTP Header properti blob kustom
Content-Type x-ms-blob-content-type
Content-Encoding x-ms-blob-content-encoding
Content-Language x-ms-blob-content-language
Content-MD5 x-ms-blob-content-md5
Cache-Control x-ms-blob-cache-control

Semantik untuk mengatur atau mempertahankan nilai properti ini dengan blob adalah sebagai berikut:

  • Jika klien menentukan header properti kustom, seperti yang ditunjukkan oleh x-ms-blob awalan, nilai ini disimpan dengan blob.

  • Jika klien menentukan header HTTP standar, tetapi bukan header properti kustom, nilai tersebut disimpan dalam properti kustom yang terkait yang terkait dengan blob, dan dikembalikan oleh panggilan ke Get Blob Properties. Misalnya, jika klien mengatur Content-Type header pada permintaan, nilai tersebut disimpan di properti blob x-ms-blob-content-type .

  • Jika klien mengatur header HTTP standar dan header properti yang sesuai pada permintaan yang sama, permintaan PUT menggunakan nilai yang disediakan untuk header HTTP standar, tetapi nilai yang ditentukan untuk header properti kustom dipertahankan dengan blob dan dikembalikan oleh permintaan GET berikutnya.

Jika tag disediakan di x-ms-tags header, tag tersebut harus dikodekan string kueri. Kunci dan nilai tag harus sesuai dengan persyaratan penamaan dan panjang seperti yang ditentukan dalam Set Blob Tags. Selanjutnya, x-ms-tags header mungkin berisi hingga 2kb tag. Jika lebih banyak tag diperlukan, gunakan operasi Atur Tag Blob .

Jika blob memiliki sewa aktif, klien harus menentukan ID sewa yang valid pada permintaan untuk menimpa blob. Jika klien tidak menentukan ID sewa atau menentukan ID sewa yang tidak valid, Blob Storage mengembalikan kode status 412 (Prasyarat Gagal). Jika klien menentukan ID sewa tetapi blob tidak memiliki sewa aktif, Blob Storage juga mengembalikan kode status 412 (Prasyarat Gagal). Jika klien menentukan ID sewa pada blob yang belum ada, Blob Storage mengembalikan kode status 412 (Prasyarat Gagal) untuk permintaan yang dibuat terhadap versi 2013-08-15 dan yang lebih baru. Untuk versi yang lebih lama dari 2013-08-15, Blob Storage mengembalikan kode status 201 (Dibuat).

Jika blob yang ada dengan sewa aktif ditimpa oleh Put Blob operasi, sewa tetap ada pada blob yang diperbarui hingga kedaluwarsa atau dirilis.

Operasi Put Blob diizinkan 10 menit per MiB untuk diselesaikan. Jika operasi rata-rata memakan waktu lebih dari 10 menit per MiB, waktu operasi habis.

Menimpa blob archive gagal. Jika tidak, blob mewarisi tingkat dari blob lama jika x-ms-access-tier header tidak disediakan.

Opsi kedaluwarsa

Anda dapat mengirim nilai berikut sebagai x-ms-expiry-option header. Header ini tidak peka huruf besar/kecil.

Opsi kedaluwarsa Description
RelativeToNow Mengatur tanggal kedaluwarsa relatif terhadap waktu saat ini. x-ms-expiry-time harus ditentukan sebagai jumlah milidetik yang akan berlalu dari waktu sekarang.
Absolute x-ms-expiry-time harus ditentukan sebagai waktu absolut, dalam format RFC 1123.
NeverExpire Mengatur blob agar tidak pernah kedaluwarsa atau menghapus tanggal kedaluwarsa saat ini. x-ms-expiry-time tidak boleh ditentukan.

Semantik untuk mengatur tanggal kedaluwarsa pada blob adalah sebagai berikut:

  • Set Expiry Dapat diatur hanya pada blob dan bukan direktori.
  • Set Expiry dengan di expiryTime masa lalu tidak diperbolehkan.
  • ExpiryTime tidak dapat ditentukan dengan expiryOption nilai Never.

Billing

Permintaan harga dapat berasal dari klien yang menggunakan API Blob Storage, baik langsung melalui REST API Blob Storage, atau dari pustaka klien Azure Storage. Permintaan ini menimbulkan biaya per transaksi. Jenis transaksi memengaruhi bagaimana akun ditagih. Misalnya, transaksi baca bertambah ke kategori penagihan yang berbeda dari transaksi tulis. Tabel berikut menunjukkan kategori penagihan untuk Put Blob permintaan berdasarkan jenis akun penyimpanan:

Operasi Jenis akun penyimpanan Kategori penagihan
Letakkan Blob Objek besar biner blok premium
Standar tujuan umum versi 2
Tujuan umum standar v1
Operasi tulis

Untuk mempelajari tentang harga untuk kategori penagihan yang ditentukan, lihat Harga Azure Blob Storage.

Lihat juga

Mengotorisasi permintaan ke Azure Storage
Status dan kode galat
Kode kesalahan layanan blob
Atur batas waktu untuk operasi layanan Blob