Condividi tramite


Creazione di sottoscrizioni

Importante

Questa API è obsoleta e ritirata a partire dal 11/1/2021 e non deve più essere usata.

Crea una nuova sottoscrizione. Dopo la creazione, il manifesto della risorsa della sottoscrizione non è modificabile. Questa operazione non è idempotente. La ripetizione della chiamata di creazione dopo la creazione di una sottoscrizione con lo stesso nome (nello stesso argomento e spazio dei nomi) è stata creata correttamente, genera un messaggio di errore conflitto 409.

Se si crea una sottoscrizione con un nome contenente caratteri speciali o codificati, ad esempio "test? Name=value&", che viene codificato in "test%3FName%3Dvalue%26"), viene generata un'eccezione non autorizzata (401).

Si notino le restrizioni seguenti per il nome della sottoscrizione:

  1. Può contenere solo lettere, numeri, punti (.), trattini (-) e caratteri di sottolineatura (_).

  2. Più segmenti non consentiti.

  3. Barra inoltrata (/) non consentita come prefisso o suffisso del nome della sottoscrizione.

  4. Il numero massimo di caratteri consentiti è 50.

Richiesta

Metodo URI richiesta Versione HTTP
PUT https://management.core.windows.net/{subscription ID}/services/ServiceBus/Namespaces/Topics/Subscriptions/{Nome sottoscrizione} HTTP/1.1

Intestazioni richiesta

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

Intestazione della richiesta Descrizione
Content-Type application/xml;type=entry;charset=utf-8
Spazio dei nomi URL dell'endpoint di gestione
x-ms-version 2012-03-01

La richiesta richiede anche un certificato client. Questo certificato deve corrispondere a quello caricato per la sottoscrizione specifica.

Corpo della richiesta

Nella tabella seguente vengono descritti gli elementi chiave del corpo della richiesta:

Nome proprietà Tipo Descrizione
DefaultMessageTimeToLive Datetime XML In base al fatto che la lettera non recapitabile sia abilitata, se un messaggio è stato archiviato nell'argomento per più dell'ora specificata viene spostata automaticamente nella coda di lettere non recapitabili o eliminata. Questo valore viene sovrascritto dalla durata TTL specificata per il messaggio se tale durata è inferiore a quella specificata per l'argomento. Questo valore non può essere modificato dopo la creazione dell'argomento:

- Intervallo: 1 secondo - 14 giorni.

- Impostazione predefinita: 14 giorni.
LockDuration Datetime XML Questa impostazione determina la quantità di tempo, in secondi, in cui un messaggio deve essere bloccato per l'elaborazione da parte di un ricevitore. Trascorso questo intervallo di tempo, il messaggio viene sbloccato ed è disponibile per il ricevitore successivo. Impostabile solo in fase di creazione dell'argomento:

- Intervallo: 0-5 min. 0 significa che il messaggio non è bloccato.

- Impostazione predefinita: 30s.
RequiresSession Boolean Può essere impostata solo al momento della creazione dell'argomento. Se impostato su true, l'argomento è a conoscenza della sessione ed è supportato solo SessionReceiver . Gli argomenti con riconoscimento della sessione non sono supportati tramite REST.

- Impostazione predefinita: False.
EnableDeadLetteringOnMessageExpiration Boolean La proprietà può essere impostata solo al momento della creazione della sottoscrizione.

- Impostazione predefinita: False.

Questo campo determina il modo in cui il bus di servizio gestisce un messaggio con un TTL scaduto. Se true e un messaggio scade, il bus di servizio sposta il messaggio dall'argomento nella sottoqueue di lettere non recapitabili per tale argomento. Se false, il messaggio viene eliminato definitivamente dall'argomento.
DeadLetteringOnFilterEvaluationExceptions Determina il modo in cui il bus di servizio gestisce un messaggio che causa un'eccezione durante una valutazione del filtro della sottoscrizione. Se true, il messaggio che ha causato l'eccezione viene spostato nella coda di lettere non recapitabili della sottoscrizione. In caso contrario, viene rimosso. Per impostazione predefinita, questo parametro è impostato su true, per consentire di analizzare la causa dell'eccezione. Può verificarsi da un messaggio non valido o presupposti non corretti eseguiti nel filtro sulla forma del messaggio. Può essere impostata solo al momento della creazione dell'argomento.

- Impostazione predefinita: true
EnableBatchedOperations Abilita o disabilita il comportamento di invio in batch sul lato servizio durante l'esecuzione di operazioni per la coda specifica. Se abilitato, il bus di servizio raccoglie/esegue più operazioni al back-end, per essere più efficienti nella connessione. È possibile disabilitare questa funzionalità se si desidera ridurre la latenza tra un'operazione e un'altra.

Impostazione predefinita: false
MaxDeliveryCount Unsigned Integer Numero massimo di volte che il bus di servizio tenta di recapitare un messaggio prima che il messaggio venga recapitato o rimosso.

- Impostazione predefinita: 10
MessageCount Unsigned Integer Segnala il numero di messaggi nella sottoscrizione non ancora dequeued, come segnalato dal sistema di monitoraggio.

Risposta

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

Codici di risposta

Nota

Se si crea uno spazio dei nomi con un nome contenente caratteri speciali o codificati , ad esempio test?Name=value&, che viene codificato in test%3FName%3Dvalue%26), viene generata un'eccezione non autorizzata (401).

Codice Descrizione
201 Sottoscrizione creata correttamente.
400 Corpo della richiesta non valido.
401 Errore di autorizzazione.
403 Quota superata. Sottoscrizione non creata.
409 La sottoscrizione specificata esiste già oppure il percorso specificato è già occupato.
500 Errore interno.

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

Intestazioni della risposta

Nessuno.

Corpo della risposta

La descrizione della sottoscrizione viene restituita perché quando la richiesta PUT non specifica i valori per tutti gli attributi della sottoscrizione, alcune proprietà di descrizione possono contenere valori predefiniti.