Как получить изображение пользователя через идентификатор пользователя в Google Plus?
Я использовал, чтобы получить изображение пользователя через этот URL
https://plus.google.com/s2/photos/profile/(user_id)?sz=150
но теперь все, что я получаю, это ошибка 404 или отсутствие изображения. Я знаю, что Google изменил свои правила и способы подключения и позволяет другим получать информацию, но я ничего не добился, чтобы достичь того же результата, что и выше.
Примечание: я не могу использовать здесь функцию аутентификации, так как показываю изображение пользователей другим пользователям, которые вообще не подключены.
ИЛИ иначе, пользователь может не заходить из Google, но мне нужно показывать только изображения других пользователей Google.
Любая помощь будет высоко оценен!!!
Изменить: я проверил через people.get метод
https://www.googleapis.com/plus/v1/people/11595...3592320?key=AIzaSyCkdmtNN1XDg....EpepOIIs
но я получаю сообщение об ошибке
{
"error": {
"errors": [
{
"domain": "usageLimits",
"reason": "accessNotConfigured",
"message": "Access Not Configured. Please use Google Developers Console to activate the API for your project."
}
],
"code": 403,
"message": "Access Not Configured. Please use Google Developers Console to activate the API for your project."
}
}
Изменить: у меня это уже включено, так как я использую вход в Google+ уже на моем сайте, здесь я прилагаю скриншот:
2 ответа
Раньше у меня была такая же проблема для моего сайта, после многих исследований и усилий я нашел решение от себя самого, и я надеюсь, что это также сработает для вас и решит вашу проблему:
Старый трюк
Google изменил свою политику, поэтому старый прием получения изображения профиля Google теперь не работает.
например, https://plus.google.com/s2/photos/profile/(user_id)?sz=150
Новый трюк
Получить запрос:
https://www.googleapis.com/plus/v1/people/115950284...320?fields=image&key={YOUR_API_KEY}
Ответ:200 ОК
{
"image":
{
"url": "https://lh3.googleusercontent.com/-OkM...AANA/ltpH4BFZ2as/photo.jpg?sz=50"
}
}
Где YOUR_API_KEY - это ключ доступа к общедоступному API, который создается с помощью учетных данных в разделе API и авторизация по https://console.developers.google.com/.
И при создании ключа доступа к публичному API вы можете выбрать URL-адреса Referers, с которых должен быть сделан этот запрос, но для проверки следует попытаться не добавлять к нему какой-либо URL-адрес, если он работает, перейдите по URL-адресу вашего сайта.
Вы можете выбрать другие поля для отправки с URL, который вам может понадобиться здесь.
Удачного кодирования!!!
Вы можете получить эту информацию, используя вызов API people.get Google+ и указав идентификатор пользователя, для которого вы хотите получить информацию. Это будет включать в себя image.url
поле, которое вы можете использовать и изменить размер по мере необходимости.
Поскольку это общедоступная информация для пользователя, вам не нужно, чтобы пользователь проходил аутентификацию для доступа к ней. Однако вам необходим ключ API, который вы добавите в конец URL-адреса, используемого в вызове API.
Вы можете получить ключ API, перейдя на https://console.developers.google.com/ разделе "APIs и авторизация" и подразделе "Учетные данные". Затем вы можете нажать на кнопку под "Доступ к публичному API", которая говорит "Создать новый ключ".
URL, который вы будете использовать для получения информации, будет выглядеть примерно так
https://www.googleapis.com/plus/v1/people/1234567890?key=api_key
и вы получите объект JSON с информацией о профиле.
Обновление: убедитесь, что вы также включили Google+ API в консоли для разработчиков. Вы можете добраться до этого через https://console.developers.google.com/, в разделе "APIs и auth" и подразделе "API" вы можете найти "API API" в списке и включить его.