Dopo aver creato una sottoscrizione, puoi modificare il metodo di pubblicazione in push, pull o esportazione.
Prima di iniziare
- Crea una delle sottoscrizioni supportate.
Ruoli e autorizzazioni richiesti
Per ottenere l'autorizzazione necessaria per modificare il tipo di sottoscrizione, chiedi all'amministratore di concederti il ruolo IAM Pub/Sub Editor (roles/pubsub.editor) nella sottoscrizione.
Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Questo ruolo predefinito contiene l'
autorizzazione,
necessaria per
modificare il tipo di sottoscrizione.
pubsub.subscriptions.update
Potresti anche ottenere questa autorizzazione con ruoli personalizzati o altri ruoli predefiniti.
Puoi configurare il controllo dell'accesso a livello di progetto e a livello di singola risorsa. Puoi creare una sottoscrizione in un progetto e collegarla a un argomento che si trova in un altro progetto. Assicurati di disporre delle autorizzazioni necessarie per ogni progetto.
Modificare il tipo di pubblicazione di una sottoscrizione
Per modificare il tipo di pubblicazione di una sottoscrizione:
Console
Nella Google Cloud console, vai alla pagina Sottoscrizioni.
Fai clic sul nome della sottoscrizione che vuoi aggiornare.
Nella pagina dei dettagli della sottoscrizione, fai clic su Modifica.
In Tipo di pubblicazione, seleziona il nuovo tipo di pubblicazione.
Inserisci le proprietà per il nuovo tipo di sottoscrizione. Per saperne di più, consulta i seguenti argomenti:
(Facoltativo) Aggiorna le altre proprietà della sottoscrizione, se necessario.
Fai clic su Aggiorna.
gcloud
Per modificare il tipo di pubblicazione, utilizza il
gcloud pubsub subscriptions update
comando. Cancella la configurazione per il tipo di pubblicazione attuale e imposta la configurazione per il nuovo tipo, come segue:
gcloud pubsub subscriptions update SUBSCRIPTION_ID \
CLEAR_CONFIG_FLAG \
NEW_CONFIG_FLAGS
Sostituisci quanto segue:
SUBSCRIPTION_ID: il nome della sottoscrizione da aggiornare.
CLEAR_CONFIG_FLAG: un flag per cancellare la configurazione esistente per il tipo di pubblicazione. Utilizza uno dei seguenti flag, a seconda del tipo di pubblicazione attuale:
Sottoscrizione pull:
--no-enable-exactly-once-deliverySottoscrizione push:
--push-endpoint=""Sottoscrizione BigQuery:
--clear-bigquery-configAbbonamento Cloud Storage:
--clear-cloud-storage-config
NEW_CONFIG_FLAGS: flag per configurare il nuovo tipo di pubblicazione. Per saperne di più, consulta la documentazione del
gcloud pubsub subscriptions updatecomando.
Esempi
Modificare una sottoscrizione BigQuery in una sottoscrizione pull:
gcloud pubsub subscriptions update SUBSCRIPTION_ID \
--clear-bigquery-config
Modificare una sottoscrizione push in una sottoscrizione BigQuery:
gcloud pubsub subscriptions update SUBSCRIPTION_ID \
--push-endpoint="" \
--bigquery-table=BIGQUERY_TABLE
Aggiornare un endpoint di sottoscrizione push
Per aggiornare l'URL dell'endpoint in una sottoscrizione push:
Console
Per modificare l'URL dell'endpoint:
- Nella Google Cloud console, vai alla pagina Sottoscrizioni.
- Fai clic su more_vert accanto alla sottoscrizione da aggiornare.
- In Tipo di pubblicazione, scegli un'opzione di pubblicazione.
- Inserisci le altre proprietà della sottoscrizione, se necessario.
- Fai clic su Aggiorna.
gcloud
-
Nella Google Cloud console, attiva Cloud Shell.
Nella parte inferiore della Google Cloud console viene avviata una sessione di Cloud Shell e viene visualizzato un prompt della riga di comando. Cloud Shell è un ambiente shell con Google Cloud CLI già inclusa e installata e con valori già impostati per il progetto corrente. L'inizializzazione della sessione può richiedere alcuni secondi.
-
Per modificare l'URL dell'endpoint, esegui il
gcloud pubsub subscriptions modify-push-configcomando:gcloud pubsub subscriptions modify-push-config SUBSCRIPTION_ID \ --push-endpoint=PUSH_ENDPOINT
Se la sottoscrizione utilizza già la pubblicazione pull, l'impostazione dell'endpoint push cambia il metodo di pubblicazione in pubblicazione push.
Puoi passare dalla pubblicazione push alla pubblicazione pull modificando l'endpoint push in una stringa vuota.
REST
Per modificare le configurazioni push di una sottoscrizione, utilizza il
projects.subscriptions.modifyPushConfig
metodo:
Richiesta:
La richiesta deve essere autenticata con un token di accesso nell'
Authorization intestazione. Per ottenere un token di accesso per le credenziali predefinite dell'applicazione correnti: gcloud auth application-default print-access-token.
POST https://pubsub.googleapis.com/v1/projects/PROJECT_ID/subscriptions/SUBSCRIPTION_ID:modifyPushConfig Authorization: Bearer ACCESS_TOKEN
Corpo della richiesta:
{
"pushConfig": {
"pushEndpoint": "PUSH_ENDPOINT"
}
}Dove:
https://myproject.appspot.com/myhandler.Risposta:
Se la richiesta ha esito positivo, la risposta è un oggetto JSON vuoto.
C++
Prima di provare questo esempio, segui le istruzioni di configurazione di C++ in Guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub C++ .
C#
Prima di provare questo esempio, segui le istruzioni di configurazione di C# in Guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub C# .
Go
L'esempio seguente utilizza la versione principale della libreria client Go Pub/Sub (v2). Se utilizzi ancora la libreria v1, consulta la guida alla migrazione alla v2. Per visualizzare un elenco di esempi di codice della versione 1, consulta gli esempi di codice deprecati.
Prima di provare questo esempio, segui le istruzioni di configurazione di Go in Guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Go.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione di Java in Guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Java.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js in guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Node.js.
Node.ts
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js in guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Node.js.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione di Python in Guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Python.
Ruby
L'esempio seguente utilizza la libreria client Ruby Pub/Sub v3. Se utilizzi ancora la libreria v2, consulta la guida alla migrazione alla v3. Per visualizzare un elenco di esempi di codice Ruby v2, consulta gli esempi di codice deprecati.
Prima di provare questo esempio, segui le istruzioni di configurazione di Ruby in Guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Ruby.
Passaggi successivi
- Creare o modificare una sottoscrizione con
gcloudcomandi. - Creare o modificare una sottoscrizione con le API REST.