Resolver problemas

Veja algumas dicas para solucionar problemas comuns.

Por que o raio de precisão é muito grande?

Se sua resposta de geolocalização mostrar um valor muito alto no campo de precisão, o serviço poderá estar sendo geolocalizado com base no IP da solicitação, em vez de pontos de Wi-Fi ou torres de celular. Esse tipo de resposta poderá acontecer se o serviço não reconhecer nenhuma torre de celular ou ponto de acesso.

Para confirmar que o serviço não conseguiu localizar geograficamente seus pontos de acesso, defina considerIp como falso na solicitação. Se a resposta for 404, você confirmou que não foi possível geolocalizar os objetos wifiAccessPoints e CellTowers.

Como soluciono um erro de resposta?

Se a solicitação gerar um erro, o sistema retornará um corpo de resposta de erro de formato padrão e definirá o código de status HTTP como um status de erro.

A resposta de erro contém um objeto com um único objeto de erro com as seguintes chaves:

  • code: é o mesmo que o status HTTP da resposta.
  • message: uma breve descrição do erro.
  • errors: uma lista de erros que ocorreram. Cada erro contém um identificador para o tipo de erro (o motivo) e uma breve descrição (a mensagem).

Por exemplo, o envio de um JSON inválido retorna o seguinte erro:

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "parseError",
    "message": "Parse Error",
   }
  ],
  "code": 400,
  "message": "Parse Error"
 }
}

Coletar informações de teste de dispositivos

Para outros testes, você pode coletar informações do seu dispositivo usando os SDKs e as APIs abaixo:

Descrições de erros

Aqui estão os possíveis erros que você pode encontrar com descrições.

Motivo Domínio Código de status HTTP Descrição
dailyLimitExceeded usageLimits 403 Você ultrapassou seu limite diário.
keyInvalid usageLimits 400 Sua chave de API não é válida para a API Geolocation. Verifique se você incluiu a chave inteira e se comprou a API ou ativou o faturamento e a API para receber a cota sem custos financeiros.
userRateLimitExceeded usageLimits 403 Você excedeu o limite de solicitações configurado no console do Google Cloud. Normalmente, esse limite é definido como solicitações por dia, por 100 segundos e por 100 segundos por usuário. Configure seu limite para evitar que um único ou pequeno grupo de usuários esgote sua cota diária, ao mesmo tempo em que permite acesso razoável para todos. Consulte Como limitar o uso da API para configurar esses limites.
notFound geolocation 404 A solicitação era válida, mas não retornou resultados.
parseError global 400 O corpo da solicitação não é um JSON válido. Consulte a seção Corpo da solicitação para ver detalhes sobre cada campo.