Questa pagina mostra come risolvere i problemi relativi all'unwrapping del payload.
Errori di codice di stato HTTP
Quando utilizzi l'unwrapping del payload, possono verificarsi errori comuni del codice di stato HTTP.
Puoi monitorare gli errori con la metrica push_request_count.
400 Bad Request
Il seguente errore si verifica quando Pub/Sub non riesce a elaborare la richiesta a causa di una configurazione errata 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 del messaggio) non corrisponde al formato della richiesta previsto specificato dall'endpoint HTTP.
- Mancano le intestazioni necessarie per elaborare la richiesta.
- Per l'abbonamento è configurato un endpoint HTTP errato.
Per risolvere il problema, prova le seguenti soluzioni:
- Controlla il formato del payload (dati del messaggio). Assicurati che corrisponda al formato della richiesta previsto specificato dall'endpoint HTTP.
- Verifica che la richiesta contenga le intestazioni richieste. Se le intestazioni non sono presenti,
potresti doverle aggiungere negli attributi del messaggio. Ad esempio, potresti
dover includere
Content-Type, ma potrebbero essere necessari anche altri elementi. - Verifica che l'endpoint HTTP configurato per l'abbonamento sia valido.
- Abilita la coda di messaggi non recapitabili (DLQ) nella sottoscrizione push. In questo modo vengono reindirizzati i singoli messaggi che non possono essere essere consegnati. È utile abilitare la DLQ se visualizzi un numero ridotto di errori 400 che vuoi esaminare.
401 non autorizzato / 403 accesso negato
Il seguente errore si verifica quando Pub/Sub non riesce a 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 l'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, potresti dover aggiungere la tua chiave di autorizzazione o chiave API negli attributi del messaggio di pubblicazione.
415 Unsupported Media Type
Il seguente errore si verifica quando Pub/Sub non riesce a elaborare la richiesta perché il formato del payload 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 del tipo di media obbligatoria.
Per risolvere il problema, prova la seguente soluzione:
- È probabile che l'endpoint richieda un'intestazione
Content-Type. Per impostazione predefinita, l'unwrapping del payload non imposta un'intestazione del tipo di media. Puoi impostare un'intestazioneContent-Typeallegandola come attributo del messaggio di pubblicazione.
431 request header fields too large / 413 content too large
Si verifica il seguente errore quando Pub/Sub non riesce a 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 di un messaggio Pub/Sub superano le dimensioni del limite di intestazione di un server.
Per risolvere questi problemi, prova le seguenti soluzioni:
- Disattiva Scrivi metadati.
- Attiva la coda di messaggi non recapitabili (DLQ) nella sottoscrizione push. In questo modo vengono reindirizzati i singoli messaggi che non possono essere essere consegnati. Successivamente, l'abbonamento continua a funzionare, ma i messaggi con errori vengono reindirizzati a un argomento separato per ulteriori analisi.
Controllare se l'annullamento del wrapping del payload è abilitato
Nella console Google Cloud , vai alla pagina Sottoscrizioni.
Fai clic sul nome del servizio.
Viene visualizzata la pagina dei dettagli del servizio.
Nella tabella di configurazione, trova i seguenti valori: Estrazione dei dati dei messaggi e Scrittura dei metadati dei messaggi.
Lo stato del wrapping del payload (attivato o disattivato) viene visualizzato nella riga della tabella corrispondente.
Passaggi successivi
- Se i problemi con l'unwrapping del payload persistono, consulta la sezione Richiedere assistenza.