Мы используем google login на нашем веб-сайте и весеннюю социальную библиотеку для реализации oAuth 2. После получения accessToken с областью действия, как userInfo.email, мы пытаемся получить accountEmail. spring-social-google (версия 1.0.0) ищет ключевой «аккаунт» в свойстве электронных писем ответа. Ниже приведен блок кода из Spring-social-sources org.springframework.social.google.api.plus.Person.class
public String getAccountEmail() {
if (emails != null) {
for (Entry<String, String> entry : emails.entrySet()) {
if (entry.getValue().equals("account")) {
return entry.getKey();
}
}
}
return null;
}
Начиная с 27 октября, Google отображает карту электронной почты как "ACCOUNT" вместо"account"
Expert from logs before 27th - getEmails :: {xxxxxxx@gmail.com=account}
Expert from logs after 27th - getEmails :: {xxxxxxx@gmail.com=ACCOUNT}
Я не смог найти документацию от Google относительно формата изменения или ответа. Когда я использую игровую площадку API, я вижу, что тип выглядит как «ACCOUNT».
"image": {
"url": "....photo.jpg",
"isDefault": true },
"etag": "xxx",
"id": "xxx",
"kind": "plus#person",
"emails": [
{
"type": "ACCOUNT",
"value": "xxxx@gmail.com"
}
]
}
Я просто хотел проверить, сталкивался ли кто-либо еще с проблемой или есть ли у кого-нибудь документация от Google, в которой объясняетсяпочему произошли изменения.