Questa pagina mostra come risolvere i problemi relativi all'annullamento del wrapping del payload.
Errori relativi ai codici di stato HTTP
Quando utilizzi l'annullamento del wrapping del payload, possono verificarsi errori comuni relativi al codice di stato HTTP.
Puoi monitorare gli errori con la metrica push_request_count
.
Richiesta non valida (400)
Il seguente errore si verifica quando Pub/Sub non può elaborare la richiesta a causa di un'errata configurazione o di dati mancanti.
400 Bad Request
Questo errore si verifica per diversi motivi. Di seguito sono riportate alcune delle cause più comuni dell'errore:
- Il payload (dati dei messaggi) non corrisponde al formato della richiesta previsto specificato dall'endpoint HTTP.
- Mancano le intestazioni necessarie per elaborare la richiesta.
- È stato configurato un endpoint HTTP errato per la sottoscrizione.
Per risolvere il problema, prova le seguenti soluzioni:
- Controlla il formato del payload (dati dei messaggi). Assicurati che corrisponda al formato della richiesta previsto specificato dall'endpoint HTTP.
- Verifica che la richiesta contenga le intestazioni richieste. Se mancano le intestazioni,
potrebbe essere necessario aggiungerle agli attributi del messaggio. Un esempio può includere
Content-Type
, ma potrebbero essere necessari anche altri. - Verifica che l'endpoint HTTP configurato per la tua sottoscrizione sia valido.
- Attiva Dead Letter Queue (DLQ) nella sottoscrizione push. Questo reindirizza i singoli messaggi che non possono essere recapitati. È utile abilitare i contenuti DLQ se noti un numero ridotto di errori 400 che vuoi esaminare.
401 non autorizzato / 403 non autorizzato
Il seguente errore si verifica quando Pub/Sub non può elaborare la richiesta a causa di credenziali errate o non valide.
401 unauthorized / 403 forbidden
Questo errore si verifica perché la sottoscrizione push non è autenticata.
Per risolvere il problema, prova le seguenti soluzioni:
Attiva Autenticazione push. L'utilizzo dell'autenticazione push è importante se esegui l'integrazione con Cloud Run o App Engine.
Se l'autenticazione push non funziona con la tua soluzione, potrebbe essere necessario aggiungere la tua chiave di autorizzazione o la chiave API negli attributi del messaggio di pubblicazione.
415 Tipo di supporto non supportato
Il seguente errore si verifica quando Pub/Sub non può elaborare la richiesta perché il formato del payload è in un formato non supportato.
415 Unsupported Media Type
Questo errore si verifica per diversi motivi. Di seguito sono riportate alcune delle cause più comuni dell'errore:
- Nell'endpoint manca l'intestazione tipo di media obbligatoria.
Per risolvere il problema, prova la seguente soluzione:
- È probabile che il tuo endpoint richieda un'intestazione
Content-Type
. Per impostazione predefinita, l'annullamento del wrapping del payload non imposta un'intestazione di tipo multimediale. Puoi impostare un'intestazioneContent-Type
allegandola come attributo di pubblicazione del messaggio.
431 campi intestazione richiesta troppo grandi / 413 contenuti troppo grandi
Il seguente errore si verifica quando Pub/Sub non può elaborare la richiesta perché i contenuti inviati nella richiesta sono troppo grandi.
431 request header fields too Large / 413 content too large
Questo errore si verifica se gli attributi in un messaggio Pub/Sub superano la dimensione limite di intestazione di un server.
Per risolvere questi problemi, prova le seguenti soluzioni:
- Disattiva Scrivi metadati.
- Attiva Dead Letter Queue (DLQ) nella sottoscrizione push. Questo reindirizza i singoli messaggi che non possono essere recapitati. Dopo, l'abbonamento continua a funzionare, ma i messaggi con errori vengono reindirizzati a un argomento separato per ulteriori analisi.
Controlla se l'annullamento del wrapping del payload è abilitato
Nella console Google Cloud, vai alla pagina Abbonamenti.
Fai clic sul nome del tuo servizio.
Si apre la pagina dei dettagli del servizio.
Nella tabella di configurazione, individua i seguenti valori: Unwrapping dei dati dei messaggi e Scrivi metadati dei messaggi.
Lo stato del wrapping del payload (attivato o disabilitato) viene visualizzato nella riga della tabella corrispondente.
Passaggi successivi
- Se continui a riscontrare problemi con l'annullamento del wrapping del payload, vedi Ricevere assistenza.