firebase / firebase/firebase-admin-java
Handle invalid token responses in FCM
- Linguagem predominante
- Java
- Estrelas
- 620
- Forks
- 305
- Merge médio
- 3h 23min
- PRs com merge (30d)
- 1
Descrição
As per the [documentation](https://firebase.google.com/docs/cloud-messaging/manage-tokens#ensuring-registration-token-freshness) a token could be invalid if you have two error codes:
- UNREGISTERED (HTTP 404)
- INVALID_ARGUMENT (HTTP 400)
However INVALID_ARGUMENTS can be caused by other errors.
At the moment we receive the content below from the `IncomingHttpResponse` which is also the error message from the `FirebaseMessagingException`. What we do is to check the string of the message in order to delete these tokens.
```
Content: {
"error": {
"code": 400,
"message": "The registration token is not a valid FCM registration token",
"status": "INVALID_ARGUMENT",
"details": [
{
"@type": "type.googleapis.com/google.firebase.fcm.v1.FcmError",
"errorCode": "INVALID_ARGUMENT"
}
]
}
}
```
What is the proper way to handle these errors?
Does it make sense to update FirebaseMessagingException to provide more information about which field is invalid or perhaps have a new error code - INVALID_TOKEN? This would remove a lot of unambiguity as to when it is needed to manage the token.
Guia de contribuição
Direção de pesquisa
Comece pela documentação vinculada sobre gerenciamento de tokens do Firebase e acompanhe como IncomingHttpResponse se torna uma FirebaseMessagingException. Compare as respostas UNREGISTERED e INVALID_ARGUMENT na issue e, em seguida, determine como a implementação deve distinguir tokens de registro inválidos de outras falhas INVALID_ARGUMENT sem depender das strings das mensagens.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- java
- Domínio
- backend-api-design
- Tipo de issue
- Funcionalidade
- Dificuldade
- 5/5
- Tempo estimado
- Mais de uma semana
- Status de atividade
- Estagnada
- Clareza
- Precisa de esclarecimento
- Facilidade para iniciantes
- 30/100