Как получить изображение пользователя через идентификатор пользователя в Google plus?
Я использовал изображение пользователя через этот URL
https://plus.google.com/s2/photos/profile/(user_id)?sz=150
но теперь все, что я получаю, - ошибка 404 или отсутствие изображения. Я знаю, что Google изменил свои политики и способ подключения и позволяет другим получать информацию, но я не смог добиться такого же результата, как и выше.
Примечание. Я не могу использовать аутентификацию здесь, так как я показываю изображение пользователей другим пользователям, которые вообще не подключены.
ИЛИ иначе пользователь может не поступать из входа в Google, но мне нужно показывать только другие изображения пользователей Google.
Любая помощь будет высоко оценена.
Edit:
Я проверил метод 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+ уже на моем сайте, здесь я прикрепляю скриншот:
Ответы
Ответ 1
Раньше у меня была такая же проблема для моего сайта после стольких исследований и усилий, которые я нашел решение от себя самого, и я надеюсь, что это также сработает для вас и решит вашу проблему:
Старый трюк
Google изменил свою политику, поэтому старый трюк для получения изображения профиля Google теперь не будет работать.
e.g 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 OK
{
"image":
{
"url": "https://lh3.googleusercontent.com/-OkM...AANA/ltpH4BFZ2as/photo.jpg?sz=50"
}
}
Где YOUR_API_KEY - ваш Открытый API-доступ, который создается через Credentials под API и Auth из https://console.developers.google.com/
И создавая Открытый API-интерфейс доступа, вы можете выбрать Referers URL-адрес, из которого должен быть выполнен этот запрос, но для проверки вы должны попробовать, не добавляя к нему никакого URL-адреса, если он работает, перейдите по URL вашего сайта.
Вы можете выбрать другие поля для отправки с URL-адресом, который вам может понадобиться здесь.
Счастливое кодирование!!!
Ответ 2
Вы можете получить эту информацию, используя people.get API Google+ API и указав идентификатор пользователя, для которого вы хотите получить информацию. Это будет поле image.url
, которое вы можете использовать и изменять размер по мере необходимости.
Поскольку это общедоступная информация для пользователя, пользователю не требуется аутентификация для доступа к нему. Однако вам нужен API-ключ, который вы добавите в конец URL-адреса, используемого в вызове API.
Вы можете получить ключ API, перейдя в https://console.developers.google.com/ в разделе "API и аут" и подраздел "Учетные данные". Затем вы можете нажать кнопку "Открытый доступ к API", который говорит "Создать новый ключ".
URL, который вы будете использовать для получения информации, будет выглядеть примерно так:
https://www.googleapis.com/plus/v1/people/1234567890?key=api_key
и вы получите объект JSON с информацией о профиле.
Обновление:
Убедитесь, что вы также включили API Google+ в консоль разработки. Вы можете перейти к этому через https://console.developers.google.com/ в разделе "API и аут" и подраздел "API", вы можете найти "Google+ API" в списке и включите его.