Buat Topik

Penting

API ini usang dan dihentikan pada 11/1/2021 dan tidak boleh lagi digunakan.

Membuat topik baru. Setelah dibuat, manifes sumber daya topik ini tidak dapat diubah. Operasi ini idempotensi. Mengulangi panggilan buat setelah antrean dengan nama yang sama berhasil dibuat, menghasilkan pesan kesalahan "Konflik 409".

Perhatikan hal-hal berikut:

  • Topik ini tidak segera dihapus. Ini ditandai untuk penghapusan dan agen manajemen sumber daya mengambil permintaan penghapusan ini dalam waktu 5 menit. Namun, UI harus segera mencerminkan operasi ini sesuai dengan kode HTTP yang diterima.

  • Nama topik sebenarnya adalah jalur URI. Ekspresi reguler berikut memvalidasi setiap segmen di jalur URI setelah menghapus kemungkinan % pengodean.

  • Nama topik harus mematuhi RegEx berikut.

    public static readonly Regex SafeMessagingEntityNameExpression = new Regex(@"^[\w-\.\$]*/?$", RegexOptions.Compiled | RegexOptions.ECMAScript);

    Ini berarti sebagai berikut:

    • Segmen entitas hanya dapat berisi huruf, angka, titik (.), tanda hubung (-), dan garis bawah (_).

    • Beberapa segmen diizinkan (misalnya, jika nama antrean = "a/b/c", itu berisi tiga segmen).

    • Garis miring (/) tidak diizinkan sebagai awalan atau akhiran nama antrean.

    • Jumlah karakter maksimum adalah 50.

Minta

Metode Meminta URI Versi HTTP
PUT https://management.core.windows.net/{subscription ID}/services/ServiceBus/Namespaces/{Namespace}/Topics/{Topic Path} HTTP/1.1

Judul Permintaan

Tabel berikut ini menjelaskan header permintaan yang diperlukan dan opsional.

Header Permintaan Deskripsi
Jenis-Konten application/xml;type=entry; charset=utf-8
x-ms-version 2012-03-01

Permintaan ini juga memerlukan sertifikat klien. Sertifikat ini harus cocok dengan sertifikat yang Anda unggah untuk langganan tertentu.

Isi Permintaan

Tabel berikut ini menjelaskan elemen kunci dari isi permintaan:

Nama Properti Jenis Diperlukan Deskripsi
MaxTopicSizeInMegaBytes Bilangan Bulat Tidak Bertanda Wajib diisi. Parameter ini menentukan ukuran topik maksimum dalam megabyte. Setiap upaya untuk mengantrekan pesan yang menyebabkan topik melebihi nilai ini gagal. Hanya konten pengguna yang diperhitungkan dalam nilai ini. Dapat diatur pada waktu pembuatan topik dan saat runtime:

- Rentang: 1–5*1024.

- Default: 1*1024.
TopicSizeinBytes Bilangan Bulat Tidak Bertanda Baca saja. Tidak diperlukan pada waktu pembuatan. Parameter ini mencerminkan jumlah byte aktual yang pesan dalam topik yang saat ini menempati relatif terhadap kuota topik.

Rentang: 0 – MaxTopicSizeinMegaBytes
DefaultMessageTimeToLive Tanggalwaktu XML Opsional. Berdasarkan apakah dead-lettering diaktifkan, jika pesan telah disimpan dalam topik selama lebih dari waktu yang ditentukan, pesan secara otomatis dipindahkan ke antrean surat mati atau dihapus. Nilai ini ditimpa oleh TTL yang ditentukan pada pesan jika pesan TTL lebih kecil dari TTL yang ditetapkan pada topik. Nilai ini tidak dapat diubah setelah topik dibuat:

- Rentang: 1 detik – 14 hari.

- Default: 14 hari.
RequiresDuplicateDetection Boolean Opsional. Hanya dapat diatur pada waktu pembuatan topik.

- Default untuk topik tahan lama: False.
EnableDeadLetteringOnMessageExpiration Boolean Opsional. Hanya dapat diatur pada waktu pembuatan topik.

- Default: False.

Bidang ini menentukan bagaimana Azure Service Bus menangani pesan dengan TTL yang kedaluwarsa. Jika diaktifkan dan pesan kedaluwarsa, Azure Service Bus memindahkan pesan dari topik ke subantrean surat mati untuk topik tersebut. Jika dinonaktifkan, pesan akan dihapus secara permanen dari topik tersebut.
DuplicateDetectionHistoryTimeWindow Rentang Waktu Opsional. Properti yang menentukan rentang waktu di mana Azure Service Bus mendeteksi duplikasi pesan.

- Rentang: 1 detik – 7 hari.

- Default: 10 menit.
NumberOfSubscriptions Bilangan bulat Baca saja. Tidak diperlukan pada waktu pembuatan. Jumlah langganan topik.
Status String Baca saja. Salah satu dari nilai berikut:

- Membuat: saat masih dalam fase pembuatan.
- Aktif: secara default setelah pembuatan, atau ketika pengguna mengaktifkannya setelah terakhir kali ditangguhkan.
- Ditangguhkan: ketika pengguna memperbarui entitas yang akan ditangguhkan.

Respons

Respons mencakup kode status HTTP dan sekumpulan header respons.

Kode Respons

Catatan

Jika Anda membuat topik dengan nama yang berisi karakter khusus atau dikodekan (misalnya, test?Name=value&, yang dikodekan ke test%3FName%3Dvalue%26), pengecualian tidak sah (401) dihasilkan.

Kode Deskripsi
201 Topik berhasil dibuat.
400 Isi permintaan tidak valid.
401 Kegagalan otorisasi.
403 Kuota terlampaui; antrean tidak diperbarui.
500 Kesalahan internal.

Untuk informasi tentang kode status, lihat Status dan Kode Kesalahan.

Header Respons

Header Respons Deskripsi
Jenis-Konten application/xml;type=entry; charset=utf-8

Isi Respons

Deskripsi topik dikembalikan, karena jika beberapa properti deskripsi hilang dari permintaan PUT, deskripsi mungkin berisi nilai default.