Obter um nome de email/usuário do Google em Java?
-
25-09-2019 - |
Pergunta
É possível recuperar o nome de usuário de uma conta do Google que autentiquei com sucesso usando o OAuth?
Recuperei os usuários Tokens de acesso, mas estou me perguntando se é uma chamada de API que posso fazer com isso https: //google.api/getUsername E passe os tokens de acesso a essa chamada e recupere o nome/nome de usuário do Email de Usuários?
Em um serviço da Web OAUTH normal, tudo o que você precisa é o Secret e o ID Access Tokens para fazer chamadas para o serviço da Web, mas no Google você também precisa do nome de usuário.
Alguma ideia?
Solução
Dar uma olhada em http://sites.google.com/site/oauthgoog/home/emaildisplayscope . Isso deve funcionar para você.
Outras dicas
A única maneira de achei que até agora é usar a API da planilha.
Se você solicitar o feed, isso lista todos os documentos
https://spreadsheets.google.com/feeds/spreadsheets/private/full?alt=json
Há um campo com o nome de usuário também:
response.data.feed.title.$t
Infelizmente, isso significa levar o usuário a conceder acesso à sua conta GDOCS, o que pode ser confuso.
Mas não conheço nenhuma API do Google para obter o nome de usuário diretamente.
Melhor maneira, o seguinte feed foi recuperado da API de dados de contatos:
https://www.google.com/m8/feeds/contacts/default/full?alt=json&max-sults=0
e obtenha os próximos campos do feed:
response.data.feed.id
ou
response.data.feed.author.name.$t
response.data.feed.author.email.$t
http://code.google.com/intl/ja/apis/accounts/docs/authforinstalledapps.html#errors
Este é PHP, acho que uma pequena modificação em Java poderia fazer esse treino
http://www.electrictoolbox.com/google-analytics-login-php-curl-username-password/