Mengintip Pesan

Operasi mengambil Peek Messages satu atau beberapa pesan dari depan antrean, tetapi tidak mengubah visibilitas pesan.

Minta

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

Metode Meminta URI Versi HTTP
GET https://myaccount.queue.core.windows.net/myqueue/messages?peekonly=true HTTP/1.1

Permintaan layanan penyimpanan yang ditimulasikan

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

Metode Meminta URI Versi HTTP
GET http://127.0.0.1:10001/devstoreaccount1/myqueue/messages?peekonly=true HTTP/1.1

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

Parameter URI

Parameter berikut dapat ditentukan pada URI permintaan.

Parameter Deskripsi
numofmessages Opsional. Nilai bilangan bulat bukan nol yang menentukan jumlah pesan yang akan diintip dari antrean, hingga maksimum 32. Secara default, satu pesan diintip dari antrean dengan operasi ini.
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 atau 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 Pilihan. Menentukan versi operasi yang akan digunakan untuk permintaan ini. Untuk informasi selengkapnya, lihat Penerapan versi untuk layanan Azure Storage.
x-ms-client-request-id Opsional. 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 Queue Storage.

Isi permintaan

Tidak ada.

Respons

Respons mencakup kode status HTTP, sekumpulan header respons, dan isi respons XML.

Kode status

Operasi yang berhasil mengembalikan kode status 200 (OK).

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

Header respons

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

Header respons 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 Versi layanan Antrean yang digunakan untuk menjalankan 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 saat respons dimulai.
x-ms-client-request-id 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 nilainya 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

XML respons untuk Peek Messages operasi dikembalikan dalam format berikut.

Elemen MessageID adalah nilai GUID yang mengidentifikasi pesan dalam antrean. Nilai ini ditetapkan ke pesan oleh layanan Antrean dan buram kepada klien.

Elemen InsertionTime dan ExpirationTime dinyatakan sebagai nilai UTC dan diformat seperti yang dijelaskan dalam RFC 1123.

Elemen DequeueCount memiliki nilai 1 saat pertama kali pesan dibatalkan antreannya. Nilai ini bertahap setiap kali pesan kemudian dilenyapkan dari antrean.

Catatan

Elemen DequeueCount dikembalikan dalam isi respons hanya jika antrean dibuat dengan layanan Antrean versi 2009-09-19.

<QueueMessagesList>  
    <QueueMessage>  
      <MessageId>string-message-id</MessageId>  
      <InsertionTime>insertion-time</InsertionTime>  
      <ExpirationTime>expiration-time</ExpirationTime>  
      <DequeueCount>integer</DequeueCount>  
      <MessageText>message-body</MessageText>  
    </QueueMessage>  
</QueueMessagesList>  

Catatan

Respons ini berbeda dari respons untuk operasi Dapatkan Pesan karena tidak berisi PopReceipt elemen atau TimeNextVisible .

Respons sampel

Response Status:  
HTTP/1.1 200 OK  
  
Response Headers:  
Transfer-Encoding: chunked  
Content-Type: application/xml  
Date: Fri, 16 Sep 2011 22:51:18 GMT  
Server: Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0  
  
Response Body:  
<?xml version="1.0" encoding="utf-8"?>  
<QueueMessagesList>  
  <QueueMessage>  
    <MessageId>06eba214-8107-4412-a7f6-710a9baff647</MessageId>  
    <InsertionTime>Fri, 09 Oct 2009 18:59:54 GMT</InsertionTime>  
    <ExpirationTime>Fri, 16 Sep 2009 18:59:54 GMT</ExpirationTime>  
    <DequeueCount>1</DequeueCount>  
    <MessageText>PHRlc3Q+dGhpcyBpcyBhIHRlc3QgbWVzc2FnZTwvdGVzdD4=</MessageText>  
  </QueueMessage>  
</QueueMessagesList>  

Authorization

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

Keterangan

Ketika pesan diambil dari antrean dengan peekonly diatur ke true, visibilitas pesan tidak berubah. Pesan tetap tersedia untuk konsumen antrean lain hingga klien mengambil pesan dengan menggunakan operasi Dapatkan Pesan . Klien yang meminta pesan tidak menerima tanda terima pop dengan respons dan, oleh karena itu, tidak dapat menghapus pesan.

Hanya pesan yang terlihat yang dapat diambil dengan Peek Messages operasi. Perhatikan bahwa jumlah maksimum pesan yang dapat diambil adalah 32.

Ketika pesan diambil untuk pertama kalinya dengan panggilan ke Get Messages, propertinya DequeueCount diatur ke 1. Jika tidak dihapus dan kemudian diambil lagi, DequeueCount properti akan dinaikkan. Klien dapat menggunakan nilai ini untuk menentukan berapa kali pesan telah diambil.

Catatan

Panggilan ke Peek Messages tidak menambah nilai DequeueCount, tetapi mengembalikan nilai ini untuk dibaca klien.

Jika parameter numofmessages di luar rentang, layanan mengembalikan kode status 400 (Permintaan Buruk), bersama dengan informasi kesalahan tambahan, seperti yang ditunjukkan dalam contoh berikut:

HTTP/1.1 400 One of the query parameters specified in the request URI is outside the permissible range.  
Connection: Keep-Alive  
Content-Length: 455  
Via: 1.1 TK5-PRXY-22  
Date: Wed, 02 May 2012 19:37:23 GMT  
Content-Type: application/xml  
Server: Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0  
x-ms-request-id: 6a03526c-ca2c-4358-a63a-b5d096988533  
x-ms-version: 2011-08-18  
  
<?xml version="1.0" encoding="utf-8"?>  
   <Error>  
      <Code>OutOfRangeQueryParameterValue</Code>  
      <Message>One of the query parameters specified in the request URI is outside the permissible range.  
               RequestId:6a03526c-ca2c-4358-a63a-b5d096988533  
               Time:2012-05-02T19:37:24.2438463Z  
      </Message>  
      <QueryParameterName>numofmessages</QueryParameterName>  
      <QueryParameterValue>0</QueryParameterValue>  
      <MinimumAllowed>1</MinimumAllowed>  
      <MaximumAllowed>32</MaximumAllowed>  
   </Error>  
  

Lihat juga

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