Использовать собственный HTTP-клиент с библиотекой Google API Go?
Чтобы использовать API Google
go
SDK, нам нужно использовать источник токена . Это отлично работает само по себе, но становится проблемой при использовании настраиваемого HTTP-клиента .
В документации упоминается, что параметры не сохраняются при использовании настраиваемого HTTP-клиента. Это необходимо нам для того, чтобы настроить клиента.
Есть ли способ одновременно использовать HTTP-клиент и источник токена?
1 ответ
Потому что
WithHTTPClient
исключает использование любого другого варианта, альтернативой является подготовка http-клиента с источником токена. Для этого необходимо определить транспорт.
service, err := ggoauth2.NewService(
ctx,
option.WithHTTPClient(&http.Client{
Timeout: 30 * time.Second,
Transport: &oauth2.Transport{
Base: http.DefaultTransport,
Source: tokenSource,
},
}),
)