Запрос информации пользователя API Google возвращает больше информации, чем мне нужно - PullRequest
0 голосов
/ 29 января 2019

Я только что получил электронное письмо от Google, предупреждающее меня о том, что наше приложение использует API-интерфейсы Google+, которые вскоре будут закрыты.Это стало неожиданностью, потому что мы сознательно не используем API Google+.В электронном письме указывается, что мы используем метод plus.me или область действия OAuth.

Я подозреваю, что предупреждение может быть сгенерировано, поскольку при запросе доступа к API Календаря Google мы также запрашиваем область userinfo.email, чтобымы можем напомнить пользователю, какую учетную запись мы публикуем.Полный список областей, которые мы запрашиваем для этого приложения:

https://www.google.com/calendar/feeds/

https://www.googleapis.com/auth/userinfo.email

Чтобы получить адрес электронной почты, мы используем:

https://www.googleapis.com/oauth2/v3/userinfo?alt=json&access_token=xxx

Однако это возвращает больше, чем просто интересующий нас адрес электронной почты:

{
  "sub":"xxx",
  "name":"John Smith",
  "given_name":"John",
  "family_name":"Smith",
  "profile":"https:\/\/plus.google.com\/xxx",
  "picture":"https:\/\/lh3.googleusercontent.com\/xxx/photo.jpg",
  "email":"xxx@example.com",
  "email_verified":true
}

Похоже ли это на правдоподобное объяснение того, почему Google предупреждаетнас об использовании plus.me?

Кто-нибудь знает, исчезнет ли значение "профиля" в ответе после закрытия Google+ или мне нужно найти другой способ запроса адреса электронной почты?

Как можно было бы лучше запрашивать только адрес электронной почты аккаунта, чтобы избежать возможных проблем, связанных с отключением Google+?

Отредактировано для добавления

Я только что получил следующее пояснительное письмо от Google, в котором звучит так, будто моя паника по поводу исходного письма была необоснованной:

Уважаемый разработчик,

Ранее на этой неделе мы отправилиэлектронное письмо, связанное с вашими проектами, на которое будет влиять завершение работы API Google+, что также влияет на запросы областей OAuth Google+.

В электронном письме указано, что один или несколько ваших проектов запрашивают «plus.me»сфера, и таким образом будет затронут.Мы хотели бы уточнить, что затрагиваются только проекты, напрямую запрашивающие объем «plus.me».Эта область может быть указана в некоторых электронных письмах, даже если ваш проект не запросил об этом напрямую.Мы приносим свои извинения за возникшую путаницу.

Если вы непосредственно запрашиваете область «plus.me», любые другие области действия OAuth Google+ или совершаете какие-либо вызовы Google+ API, убедитесь, что вы удалили эти запросы из своего проекта до того, как7 марта 2019 года.

Чтобы узнать, запрашивает ли ваш проект запрос «plus.me» или какие-либо другие области Google+ OAuth:

Если ваш проект написан в скрипте Google Apps, вы можетеПосмотрите, какие области вашего проекта запрашивает, просмотрев свойства вашего проекта в редакторе скриптов приложений.Если ваш проект не написан в скрипте Google Apps, проверьте код на наличие ссылок на «plus.me» в запросах объема OAuth.Мы рекомендуем вам просматривать проекты с использованием любых сторонних библиотек, которые поддерживают вход в систему или социальные функции, так как на них также может повлиять завершение работы.Спасибо за то, что вы являетесь уважаемым разработчиком Google+.

С уважением, команда Google+ API

1 Ответ

0 голосов
/ 30 января 2019

Я думаю, что электронная почта об использовании "plus.me" является ошибкой Google.Я использую только область "https://www.googleapis.com/auth/userinfo.email" (что совпадает с" электронной почтой "), но Google в этом письме предупреждает меня, что я использую" plus.me ". Когда я проверяю свою консоль API, я вижу там 3 области, которыеотображается серым цветом и не может быть удалена. При наведении курсора на «профиль» появляется «https://www.googleapis.com/auth/plus.me". Использование https://www.googleapis.com/auth/plus.me небезопасно из-за выключения google plus, но« профиль »должен быть в порядке.Представление «профиля» как plus.me вводит в заблуждение.Я думаю, что Google не справляется с отключением Google +.

enter image description here

Параметры sub, profile, picture (scope "openid") всегда включены.Если вы используете только область «email», параметры области «openid» будут по-прежнему включены.Но имя name_name family_name вы не должны иметь - я вижу это только для "профиля" области видимости.Я проверил ваши две области и эти 3 параметра, которые я не получил после запроса https://www.googleapis.com/oauth2/v3/userinfo

Я думаю, что Google также имеет ошибку на экране согласия пользователя.Поскольку я пытался использовать отдельно области видимости «openid», «profile», «email», но на экране всегда один и тот же текст Чтобы продолжить, Google поделится вашим именем, адресом электронной почты и изображением профиля с Example.com. Но в том случае, если область «электронной почты» не запрашивается, электронная почта не указывается в данных ответа ... но Google говорит пользователю, что электронная почта будет предоставлена.

Кстати, вы можете изменить область "https://www.googleapis.com/auth/userinfo.email", чтобы просто «отправить по электронной почте». Только в определенных областях Google требуется полный URI.


ОБНОВЛЕНИЕ

Да, как и ожидалось, это сообщение было ошибкой. Google просто отправляет исправительное письмо ...

[Исправление] API-интерфейсы Google+ закрываются 7 марта 2019 года

Уважаемый разработчик,

Ранее на этой неделе мы отправили вам письмосвязанных с вашими проектами, на которые повлияет завершение работы API Google+, что также повлияет на запросы областей OAuth Google+.

В электронном письме указано, что один или несколько ваших проектов запрашивают область действия «plus.me», ибудет таким образом подвержен влиянию.Мы хотели бы уточнить, что затрагиваются только проекты, напрямую запрашивающие объем «plus.me».Эта область может быть указана в некоторых электронных письмах, даже если ваш проект не запросил об этом напрямую.Мы приносим свои извинения за любую путаницу.

...

...