VENDITE: 1-800-867-1389

Peek Messages

Aggiornamento: novembre 2013

Tramite questa operazione vengono recuperati uno o più messaggi dalla coda, senza modificare la visibilità del messaggio.

La richiesta Peek Messages può essere costruita nel modo seguente. Si consiglia di utilizzare HTTPS. Sostituire myaccount con il nome dell'account di archiviazione e myqueue con il nome della coda:

 

Metodo URI della richiesta Versione HTTP

GET

https://myaccount.queue.core.windows.net/myqueue/messages?peekonly=true

HTTP/1.1

Quando si effettua una richiesta nel servizio di archiviazione emulato, specificare il nome host dell'emulatore e la porta del servizio di accodamento come 127.0.0.1:10001, seguiti dal nome dell'account di archiviazione emulato:

 

Metodo URI della richiesta Versione HTTP

GET

http://127.0.0.1:10001/devstoreaccount1/myqueue/messages?peekonly=true

HTTP/1.1

Per altre informazioni, vedere About Development Storage.

Nell'URI della richiesta è possibile specificare i parametri seguenti.

 

Parametro Descrizione

numofmessages

Facoltativo. Valore intero diverso da zero che specifica il numero di messaggi da recuperare dalla coda, fino a un massimo di 32. Per impostazione predefinita, questa operazione recupera un solo messaggio dalla coda.

timeout

Facoltativo. Il parametro timeout viene espresso in secondi. Per altre informazioni, vedere Impostazione di timeout per le operazioni del servizio di accodamento.

Nella tabella seguente vengono descritte le intestazioni di richiesta obbligatorie e facoltative.

 

Intestazione della richiesta Descrizione

Authorization

Obbligatorio. Specifica lo schema di autenticazione, il nome dell'account e la firma. Per altre informazioni, vedere Autenticazione per i servizi di archiviazione di Azure.

Date o x-ms-date

Obbligatorio. Specifica l'ora UTC (Coordinated Universal Time) per la richiesta. Per altre informazioni, vedere Autenticazione per i servizi di archiviazione di Azure.

x-ms-version

Facoltativo. Specifica la versione dell'operazione da utilizzare per questa richiesta. Per altre informazioni, vedere Controllo delle versioni per i servizi di archiviazione di Azure.

x-ms-client-request-id

Facoltativo. Fornisce un valore opaco generato dal client con un limite di caratteri di 1 KB che viene registrato nei log di analisi quando la registrazione di Analisi archiviazione è abilitata. L'utilizzo di questa intestazione è consigliato per la correlazione tra le attività sul lato client e le richieste ricevute dal server. Per altre informazioni vedere Informazioni sulla registrazione di Analisi archiviazione e l'articolo relativo all'utilizzo di log per tenere traccia delle richiesta di archiviazione nella registrazione di Azure.

Nella risposta sono inclusi un codice di stato HTTP, un set di intestazioni della risposta e il corpo di una risposta XML.

Un'operazione completata correttamente restituisce il codice di stato 200 (OK).

Per informazioni sui codici di stato, vedere Codici ed errori di stato.

Nella risposta per questa operazione sono incluse le intestazioni riportate di seguito; La risposta include inoltre intestazioni HTTP standard aggiuntive. Tutte le intestazioni standard sono conformi alla specifica del protocollo HTTP/1.1.

 

Intestazione della risposta Descrizione

x-ms-request-id

Questa intestazione identifica in modo univoco la richiesta effettuata e può essere utilizzata per risolvere i problemi relativi alla richiesta. Per altre informazioni, vedere Risoluzione dei problemi relativi alle operazioni dell'API.

x-ms-version

Indica la versione del servizio di accodamento utilizzata per eseguire la richiesta. Questa intestazione viene restituita per le richieste effettuate nella versione 2009-09-19 e successive.

Date

Valore data/ora UTC generato dal servizio che indica l'ora in cui è stata avviata la risposta.

La risposta XML per l'operazione Peek Messages viene restituita nel formato seguente.

L'elemento MessageID è un valore GUID che identifica il messaggio nella coda. Questo valore viene assegnato al messaggio dal servizio di accodamento e risulta opaco al client.

Gli elementi InsertionTime e ExpirationTime vengono rappresentati come valori UTC e formattati come descritto in RFC 1123.

L'elemento DequeueCount presenta un valore 1 la prima volta che il messaggio viene rimosso dalla coda. Questo valore viene incrementato ogni volta che il messaggio viene rimosso dalla coda.

noteNota
L'elemento DequeueCount viene restituito nel corpo della risposta solo se la coda è stata creata con la versione 2009-09-19 del servizio di accodamento.

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

Si noti che questa risposta è diversa dalla risposta per l'operazione Get Messages perché la risposta non contiene gli elementi PopReceipt o TimeNextVisible.

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>

Questa operazione può essere eseguita dal proprietario dell'account e da qualsiasi altro utente che utilizza una firma di accesso condiviso con l'autorizzazione di esecuzione di questa operazione.

Quando un messaggio viene recuperato dalla coda con peekonly impostato su true, la visibilità del messaggio rimane invariata. Il messaggio rimane disponibile ad altri consumer della coda finché un client non recupera il messaggio con l'operazione Get Messages. Il client che richiede il messaggio non riceve un valore di ricezione pop con la risposta, pertanto non può eliminare il messaggio.

Solo i messaggi visibili possono essere recuperati con l'operazione Peek Messages. Si noti che il numero massimo di messaggi che è possibile recuperare è 32.

Quando un messaggio viene recuperato per la prima volta con una chiamata a Get Messages, la relativa proprietà DequeueCount viene impostata su 1. Se il messaggio non viene eliminato e in seguito viene recuperato di nuovo, la proprietà DequeueCount viene incrementata. Il client può utilizzare questo valore per determinare quante volte è stato recuperato un messaggio. Si noti che una chiamata a Peek Messages non incrementa il valore di DequeueCount, ma restituisce il valore affinché il client lo legga.

Se il parametro numofmessages non è compreso nell'intervallo, il servizio restituisce il codice di stato 400 (Richiesta non valida), insieme ad altre informazioni sull'errore, come illustrato nell'esempio seguente.

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>

Il documento è risultato utile?
(1500 caratteri rimanenti)
Grazie per i commenti inviati.
Mostra:
© 2014 Microsoft