İleti Koy
İşlem, Put Message
ileti kuyruğunun arkasına yeni bir ileti ekler. Görünürlük zaman aşımı süresi dolana kadar iletiyi görünmez yapmak için bir görünürlük zaman aşımı da belirtilebilir. İleti, UTF-8 kodlamalı bir XML isteğine dahil edilebilen bir biçimde olmalıdır. Kodlanmış ileti, sürüm 2011-08-18 ve üzeri için en fazla 64 kibibayt (KiB) veya önceki sürümler için 8 KiB olabilir.
İstek
İsteği aşağıdaki gibi oluşturabilirsiniz Put Message
. HTTPS kullanmanızı öneririz.
myaccount değerini depolama hesabınızın adıyla ve myqueue
kuyruğunuzun adıyla değiştirin:
Yöntem | İstek URI'si | HTTP sürümü |
---|---|---|
POST |
https://myaccount.queue.core.windows.net/myqueue/messages?visibilitytimeout=<int-seconds>&messagettl=<int-seconds> |
HTTP/1.1 |
Öykünülmüş depolama hizmeti isteği
Öykünülen depolama hizmetine karşı istekte bulunulduğunda öykünücü ana bilgisayar adını ve Kuyruk depolama bağlantı noktasını olarak 127.0.0.1:10001
ve ardından öykünülen depolama hesabı adını belirtin:
Yöntem | İstek URI'si | HTTP sürümü |
---|---|---|
POST |
http://127.0.0.1:10001/devstoreaccount1/myqueue/messages?visibilitytimeout=<int-seconds>&messagettl=<int-seconds> |
HTTP/1.1 |
Daha fazla bilgi için bkz . Yerel Azure Depolama geliştirmesi için Azurite öykünücüsü kullanma.
URI parametreleri
İstek URI'sinde aşağıdaki parametreleri belirtebilirsiniz:
Parametre | Açıklama |
---|---|
visibilitytimeout=<int=seconds> |
İsteğe bağlı. Sunucu süresine göre yeni görünürlük zaman aşımı değerini saniye olarak belirtir. Belirtilirse, istek 2011-08-18 veya üzeri kullanılarak x-ms-version yapılmalıdır. Belirtilmezse, varsayılan değer 0'dır. Yeni değer 0'dan büyük veya buna eşit olmalıdır ve 7 günden uzun olamaz. İletinin görünürlük zaman aşımı süresi sona erme tarihinden sonraki bir değere ayarlanamaz. Yaşam süresi değerinden daha küçük bir değere ayarlayın visibilitytimeout . |
messagettl=<int-seconds> |
İsteğe bağlı. İletinin yaşam süresini saniye cinsinden belirtir. 2017-07-29'dan önceki sürümlerde izin verilen maksimum yaşam süresi 7 gündür. Sürüm 2017-07-29 ve üzeri için, yaşam süresi üst sınırı herhangi bir pozitif sayı olabilir ve -1 bu da iletinin süresinin dolmadığını gösterir. Bu parametre atlanırsa, varsayılan yaşam süresi 7 gündür. |
timeout |
İsteğe bağlı.
timeout parametresi saniye cinsinden ifade edilir. Daha fazla bilgi için bkz . Kuyruk hizmeti işlemleri için zaman aşımlarını ayarlama. |
İstek üst bilgileri
Gerekli ve isteğe bağlı istek üst bilgileri aşağıdaki tabloda açıklanmıştır:
İstek üst bilgisi | Açıklama |
---|---|
Authorization |
Gereklidir. Yetkilendirme düzenini, hesap adını ve imzayı belirtir. Daha fazla bilgi için bkz. Azure Depolama isteklerini yetkilendirme. |
Date or x-ms-date |
Gereklidir. İstek için Eşgüdümlü Evrensel Saat (UTC) biçimini belirtir. Daha fazla bilgi için bkz. Azure Depolama isteklerini yetkilendirme. |
x-ms-version |
İsteğe bağlı. Bu istek için kullanılacak işlemin sürümünü belirtir. Daha fazla bilgi için bkz. Azure Depolama hizmetleri için sürüm oluşturma. |
x-ms-client-request-id |
İsteğe bağlı. Günlüğe kaydetme yapılandırıldığında günlüklere kaydedilen 1 kibibaytlık (KiB) karakter sınırıyla istemci tarafından oluşturulan, opak bir değer sağlar. İstemci tarafı etkinlikleriyle sunucunun aldığı istekler arasında bağıntı sağlamak için bu üst bilgiyi kullanmanızı kesinlikle öneririz. |
İstek gövdesi
İsteğin gövdesi, ileti verilerini aşağıdaki XML biçiminde içerir. İleti içeriğinin UTF-8 ile kodlanabilen bir biçimde olması gerektiğini unutmayın.
<QueueMessage>
<MessageText>message-content</MessageText>
</QueueMessage>
Örnek istek
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>
Yanıt
Yanıt bir HTTP durum kodu ve yanıt üst bilgileri kümesi içerir.
Durum kodu
Başarılı bir işlem 201 (Oluşturuldu) durum kodunu döndürür.
Durum kodları hakkında daha fazla bilgi için bkz . Durum ve hata kodları.
Yanıt üst bilgileri
Bu işlemin yanıtı aşağıdaki üst bilgileri içerir. Yanıt, ek standart HTTP üst bilgileri de içerebilir. Tüm standart üst bilgiler HTTP/1.1 protokol belirtimine uygundur.
İstek üst bilgisi | Açıklama |
---|---|
x-ms-request-id |
Yapılan isteği benzersiz olarak tanımlar ve isteğin sorunlarını gidermek için bunu kullanabilirsiniz. Daha fazla bilgi için bkz. API işlemleriyle ilgili sorunları giderme. |
x-ms-version |
İsteği yürütmek için kullanılan Kuyruk hizmeti sürümünü gösterir. Bu üst bilgi, 2009-09-19 ve sonraki sürümlerde yapılan istekler için döndürülür. |
Date |
Hizmet tarafından oluşturulan ve yanıtın başlatıldığı saati gösteren UTC tarih/saat değeri. |
x-ms-client-request-id |
Bu üst bilgi, istekler ve karşılık gelen yanıtlarla ilgili sorunları gidermek için kullanılabilir. Bu üst bilginin değeri, istekte mevcutsa ve değer 1.024'ten fazla görünür ASCII karakteri içermiyorsa üst bilginin değerine x-ms-client-request-id eşittir.
x-ms-client-request-id Üst bilgi istekte yoksa yanıtta bulunmaz. |
Yanıt gövdesi
Sürüm 2016-05-31 itibarıyla, işlemin yanıtı Put Message
yanıt gövdesindeki ileti bilgilerini içerir. Döndürülen gövdenin XML biçimi burada açıklanmıştır.
MessageID
öğesi, kuyruktaki iletiyi tanımlayan bir GUID değeridir. Bu değer, Kuyruk Depolama tarafından iletiye atanır ve istemciye opaktır. Bu değer, kuyruktan bir iletiyi silmek veya güncelleştirmek için PopReceipt öğesinin değeriyle birlikte kullanılabilir. PopReceipt değeri de istemci için opaktır ve İletiyi Sil veya İletiyi Güncelleştir API'lerini kullanırken gereklidir.
InsertionTime
, ExpirationTime
ve TimeNextVisible
öğeleri UTC değerleri olarak temsil edilir ve RFC 1123'te açıklandığı gibi biçimlendirilir.
<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>
Örnek yanıt
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>
Yetkilendirme
Bu işlem, hesap sahibi ve bu işlemi gerçekleştirme izinleri olan paylaşılan erişim imzasına sahip herkes tarafından gerçekleştirilebilir.
Açıklamalar
İsteğe bağlı görünürlük zaman aşımı, iletinin görünmez olduğu zamanı belirtir. Zaman aşımı süresi dolduktan sonra ileti görünür hale gelir. Görünürlük zaman aşımı belirtmezseniz varsayılan 0 değeri kullanılır.
İsteğe bağlı ileti yaşam süresi, iletinin kuyrukta ne kadar süreyle kaldığını belirtir. Yaşam süresi dolduğunda ileti kuyruktan silinir.
İleti, UTF-8 kodlamalı bir XML isteğine dahil edilebilen bir biçimde olmalıdır. İletiye işaretleme eklemek için, iletinin içeriği XML kaçışlı veya Base64 kodlu olmalıdır. İletideki kaçış veya kodlanmış olmayan tüm XML işaretlemeleri, ileti kuyruğa eklenmeden önce kaldırılır.
İleti çok büyükse, hizmet durum kodu 400 (Hatalı İstek) döndürür.
Ayrıca bkz.
Azure Depolama'ya yönelik istekleri yetkilendirme
Durum ve hata kodları
Kuyruk hizmeti hata kodları