Как получить изображение пользователя через идентификатор пользователя в 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+ уже на моем сайте, здесь я прикрепляю скриншот:

Google+ API already enabled

Ответы

Ответ 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" в списке и включите его.