Invio di un batch di messaggi

Invia un batch di messaggi a una coda o a un argomento del bus di servizio.

Richiesta

Metodo URI richiesta Versione HTTP
POST http{s}://{serviceNamespace}.servicebus.windows.net/{queuePath|topicPath}/messages|HTTP/1.1

Intestazioni richiesta

Nella seguente tabella vengono descritte le intestazioni di richiesta obbligatorie e facoltative. Oltre alle proprietà elencate, l'intestazione può contenere proprietà personalizzate. Vedere l'esempio.

Intestazione della richiesta Descrizione
Autorizzazione Specificare uno dei valori di token seguenti:
  • Token Json Web Token (JWT) di Azure Active Directory (Azure AD).
    Esempio: Authorization: Bearer <Azure AD JWT token>.
    Per informazioni sulla generazione di un token di Azure AD, vedere Autenticare da un'applicazione.
  • Un token di firma di accesso condiviso.
    Esempio: Authorization: SharedAccessSignature sr=<NAMESPACE NAME>.servicebus.windows.net&sig=<SHARED ACCESS KEY>&se=<TOKEN EXPIRY INSTANT>&skn=<SHARED KEY NAME>.
    Per informazioni sulla generazione di un token di firma di accesso condiviso, vedere Generare un token di firma di accesso condiviso e generare un token di firma di accesso condiviso.
Content-Type Impostato su application/vnd.microsoft.servicebus.json.
x-ms-retrypolicy (Facoltativo) Impostare su per NoRetry disabilitare i tentativi automatici sulle operazioni di invio nel caso di errori temporanei.

Corpo della richiesta

Il corpo della richiesta contiene il batch di messaggi con codifica JSON.

Risposta

Nella risposta sono inclusi un codice di stato HTTP e un set di intestazioni per la risposta.

Codici di risposta

Codice Descrizione
201 Invio del messaggio alla coda o all'argomento riuscito.
400 Richiesta non valida.
401 Errore di autorizzazione.
403 Quota superata o messaggio troppo grande.
410 Coda o argomento specificato inesistente.
500 Errore interno.

Per informazioni sui codici di stato, vedere Codici di stato e di errore.

Intestazioni della risposta

Content-type, in base a quanto passato.

Corpo della risposta

No.

Esempio

La seguente richiesta HTTP invia un batch di tre messaggi a una coda o a un argomento. Il primo messaggio ha un valore TimeToLiveTimeSpan di 40 secondi, il secondo messaggio ha una proprietà messaggio personalizzata "Priority" e il terzo messaggio ha le proprietà del messaggio personalizzate "Priority" e "Customer".

POST https://your-namespace.servicebus.windows.net/HttpClientSampleQueue/messages?timeout=60 HTTP/1.1  
Authorization: SharedAccessSignature sr=your-namespace&sig=Fg8yUyR4MOmXfHfj55f5hY4jGb8x2Yc%2b3%2fULKZYxKZk%3d&se=1404256819&skn=RootManageSharedAccessKey  
Content-Type: application/vnd.microsoft.servicebus.json  
Host: your-namespace.servicebus.windows.net  
Content-Length: 18  
Expect: 100-continue  
  
[  
  {  
    "Body":”This is the first message",  
    "BrokerProperties":{"Label":"M1","TimeToLiveTimeSpan":"0.00:00:40"}  
  },  
  {  
    "Body":”This is the second message",  
    "BrokerProperties":{"Label":"M2"},  
    "UserProperties":{"Priority":"Low"}  
  },  
  {  
    "Body":”This is the third message",  
    "BrokerProperties":{"Label":"M3"},  
    "UserProperties":{"Priority":"Medium","Customer":"ABC"}  
  }  
]  
  

Il bus di servizio restituisce la risposta seguente:

HTTP/1.1 201 Created  
Transfer-Encoding: chunked  
Content-Type: application/xml; charset=utf-8  
Server: Microsoft-HTTPAPI/2.0  
Date: Tue, 01 Jul 2014 23:00:22 GMT  
  
0  

Vedere anche

Esempio di client HTTP del bus di servizio