Bagikan melalui


Letakkan Pesan

Operasi Put Message menambahkan pesan baru ke bagian belakang antrean pesan. Batas waktu visibilitas juga dapat ditentukan untuk membuat pesan tidak terlihat hingga batas waktu visibilitas kedaluwarsa. Pesan harus dalam format yang dapat disertakan dalam permintaan XML dengan pengodean UTF-8. Pesan yang dikodekan dapat berukuran hingga 64 kibibyte (KiB) untuk versi 2011-08-18 dan yang lebih baru, atau 8 KiB untuk versi yang lebih lama.

Minta

Anda dapat membuat Put Message permintaan sebagai berikut. Kami menyarankan agar Anda menggunakan HTTPS. Ganti myaccount dengan nama akun penyimpanan Anda, dan myqueue dengan nama antrean Anda:

Metode Meminta URI Versi HTTP
POST https://myaccount.queue.core.windows.net/myqueue/messages?visibilitytimeout=<int-seconds>&messagettl=<int-seconds> HTTP/1.1

Permintaan layanan penyimpanan yang ditimulasi

Saat Anda membuat permintaan terhadap layanan penyimpanan yang ditimulasi, tentukan nama host emulator dan port penyimpanan Antrean sebagai 127.0.0.1:10001, diikuti dengan nama akun penyimpanan yang ditimulasi:

Metode Meminta URI Versi HTTP
POST http://127.0.0.1:10001/devstoreaccount1/myqueue/messages?visibilitytimeout=<int-seconds>&messagettl=<int-seconds> HTTP/1.1

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

Parameter URI

Anda dapat menentukan parameter berikut pada permintaan URI:

Parameter Deskripsi
visibilitytimeout=<int=seconds> Opsional. Menentukan nilai batas waktu visibilitas baru, dalam detik, relatif terhadap waktu server. Jika ditentukan, permintaan harus dibuat dengan menggunakan x-ms-version 2011-08-18 atau yang lebih baru. Jika tidak ditentukan, nilai defaultnya adalah 0. Nilai baru harus lebih besar dari atau sama dengan 0, dan tidak boleh lebih besar dari 7 hari. Batas waktu visibilitas pesan tidak dapat diatur ke nilai yang lebih lambat dari tanggal kedaluwarsa. Atur visibilitytimeout ke nilai yang lebih kecil dari nilai time-to-live.
messagettl=<int-seconds> Pilihan. Menentukan interval time-to-live untuk pesan, dalam hitungan detik. Dalam versi yang lebih lama dari 2017-07-29, waktu hidup maksimum yang diizinkan adalah 7 hari. Untuk versi 2017-07-29 dan yang lebih baru, waktu hidup maksimum dapat berupa angka positif apa pun, dan -1, yang menunjukkan bahwa pesan tidak kedaluwarsa. Jika parameter ini dihilangkan, waktu hidup default adalah 7 hari.
timeout Pilihan. Parameter timeout dinyatakan dalam hitung detik. Untuk informasi selengkapnya, lihat Mengatur waktu habis untuk operasi layanan Antrean.

Header permintaan

Header permintaan yang diperlukan dan opsional dijelaskan dalam tabel berikut:

Meminta kop Deskripsi
Authorization Wajib diisi. Menentukan skema otorisasi, nama akun, dan tanda tangan. Untuk informasi selengkapnya, lihat Mengotorisasi permintaan ke Azure Storage.
Date or x-ms-date Wajib diisi. Menentukan Waktu Universal Terkoordinasi (UTC) untuk permintaan tersebut. Untuk informasi selengkapnya, lihat Mengotorisasi permintaan ke Azure Storage.
x-ms-version Opsional. Menentukan versi operasi yang akan digunakan untuk permintaan ini. Untuk informasi selengkapnya, lihat Penerapan versi untuk layanan Azure Storage.
x-ms-client-request-id Pilihan. 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.

Isi permintaan

Isi permintaan berisi data pesan dalam format XML berikut. Perhatikan bahwa konten pesan harus dalam format yang dapat dikodekan dengan UTF-8.

<QueueMessage>  
    <MessageText>message-content</MessageText>  
</QueueMessage>  

Contoh permintaan

Request:  
POST https://myaccount.queue.core.windows.net/messages?visibilitytimeout=30&timeout=30 HTTP/1.1  
  
Headers:  
x-ms-version: 2011-08-18  
x-ms-date: Tue, 30 Aug 2011 01:03:21 GMT  
Authorization: SharedKey myaccount:sr8rIheJmCd6npMSx7DfAY3L//V3uWvSXOzUBCV9wnk=  
Content-Length: 100  
  
Body:  
<QueueMessage>  
<MessageText>PHNhbXBsZT5zYW1wbGUgbWVzc2FnZTwvc2FtcGxlPg==</MessageText>  
</QueueMessage>  

Respons

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.

Header respons

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

Meminta kop Deskripsi
x-ms-request-id Secara unik mengidentifikasi permintaan yang dibuat, dan Anda dapat menggunakannya untuk memecahkan masalah permintaan. Untuk informasi selengkapnya, lihat Memecahkan masalah operasi API.
x-ms-version Menunjukkan versi layanan Antrean yang digunakan untuk menjalankan permintaan. Header ini 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.
x-ms-client-request-id Header ini dapat digunakan untuk memecahkan masalah permintaan dan respons yang sesuai. Nilai header ini sama dengan nilai x-ms-client-request-id header jika ada dalam permintaan dan nilai berisi tidak lebih dari 1.024 karakter ASCII yang terlihat. x-ms-client-request-id Jika header tidak ada dalam permintaan, header tidak akan ada dalam respons.

Isi Respons

Pada versi 2016-05-31, respons untuk Put Message operasi berisi info pesan dalam isi respons. Format XML dari isi yang dikembalikan dijelaskan di sini.

Elemen MessageID adalah nilai GUID yang mengidentifikasi pesan dalam antrean. Nilai ini ditetapkan ke pesan oleh Queue Storage dan buram untuk klien. Nilai ini dapat digunakan bersama dengan nilai elemen PopReceipt untuk menghapus atau memperbarui pesan dari antrean. Nilai PopReceipt juga buram untuk klien, dan diperlukan saat Anda menggunakan API Hapus Pesan atau Perbarui Pesan.

Elemen InsertionTime, ExpirationTime, dan TimeNextVisible direpresentasikan sebagai nilai UTC dan diformat seperti yang dijelaskan dalam RFC 1123.

<QueueMessagesList>
    <QueueMessage>
      <MessageId>string-message-id</MessageId>
      <InsertionTime>insertion-time</InsertionTime>
      <ExpirationTime>expiration-time</ExpirationTime>
      <PopReceipt>opaque-string-receipt-data</PopReceipt>
      <TimeNextVisible>time-next-visible</TimeNextVisible>
    </QueueMessage>
</QueueMessagesList>

Respons sampel

Response Status:
HTTP/1.1 200 OK
Response headers:
Transfer-Encoding: chunked
Content-Type: application/xml
x-ms-version: 2016-05-31
Date: Fri, 09 Oct 2016 21:04:30 GMT
Server: Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0

Response Body:

<?xml version="1.0" encoding="utf-8"?>
<QueueMessagesList>
  <QueueMessage>
    <MessageId>5974b586-0df3-4e2d-ad0c-18e3892bfca2</MessageId>
    <InsertionTime>Fri, 09 Oct 2016 21:04:30 GMT</InsertionTime>
    <ExpirationTime>Fri, 16 Oct 2016 21:04:30 GMT</ExpirationTime>
    <PopReceipt>YzQ4Yzg1MDItYTc0Ny00OWNjLTkxYTUtZGM0MDFiZDAwYzEw</PopReceipt>
    <TimeNextVisible>Fri, 09 Oct 2016 23:29:20 GMT</TimeNextVisible>
   </QueueMessage>
</QueueMessagesList>

Authorization

Operasi ini dapat dilakukan oleh pemilik akun dan oleh siapa pun dengan tanda tangan akses bersama dengan izin untuk melakukan operasi ini.

Keterangan

Batas waktu visibilitas opsional menentukan waktu pesan tidak terlihat. Setelah waktu habis berakhir, pesan akan terlihat. Jika Anda tidak menentukan batas waktu visibilitas, nilai default 0 akan digunakan.

Pesan opsional time-to-live menentukan berapa lama pesan tetap berada dalam antrean. Pesan dihapus dari antrean saat periode time-to-live kedaluwarsa.

Pesan harus dalam format yang dapat disertakan dalam permintaan XML dengan pengodean UTF-8. Untuk menyertakan markup dalam pesan, konten pesan harus berupa XML-escaped atau Base64-encode. Markup XML apa pun dalam pesan yang tidak lolos atau dikodekan dihapus sebelum pesan ditambahkan ke antrean.

Jika pesan terlalu besar, layanan mengembalikan kode status 400 (Permintaan Buruk).

Lihat juga

Mengotorisasi permintaan ke Azure Storage
Status dan kode galat
Kode kesalahan layanan antrean