Привіт, я нещодавно натрапив на те саме питання. Як пояснив Ілан Лалум, API Google+ повністю вийшов з експлуатації для нових проектів.
Я виявив, що Google People API працює аналогічно. Наступний приклад ґрунтується на підручнику " Книжкові полиці" в GCP. Вихідний код можна побачити тут: https://github.com/GoogleCloudPlatform/golang-samples/tree/appengine/go111/cloudsql/getting-started/bookshelf (відділення appengine/go111/cloudsql
)
import people "google.golang.org/api/people/v1"
...
// retrieves the profile of the user associated with the provided OAuth token
func fetchProfile(ctx context.Context, tok *oauth2.Token) (*people.Person, error) {
peopleService, err := people.NewService(ctx, option.WithTokenSource(bookshelf.OAuthConfig.TokenSource(ctx, tok)))
if err != nil {
return nil, err
}
return peopleService.People.Get("people/me").
PersonFields("names,coverPhotos,emailAddresses").
Do()
}
Для цього методу потрібен контекст і маркер OAuth, як і API API раніше. peopleService
Ініціалізується аналогічним чином.
peopleService.People.Get("people/me")
Готує запит , який витягує профіль підключеного користувача. Потім PersonFields("names,coverPhotos,emailAddresses")
проводиться фільтр по профільних полях. Ця частина запиту є обов'язковою. Врешті-решт Do()
виконаємо запит.