Клиентская библиотека PHP Google Ads API предоставляет несколько параметров конфигурации, которые можно использовать для настройки поведения библиотеки.
Конфигурационный файл
Вы можете сохранить большинство этих параметров конфигурации в ini
-файлах и использовать их при создании экземпляров клиентов, например google_ads_php.ini
.
Разработчики учетных данных и клиентов предоставляют методы fromFile
для загрузки настроек из таких файлов:
$oAuth2Credential = (new OAuth2TokenBuilder())
->fromFile('/path/to/google_ads_php.ini')
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->fromFile('/path/to/google_ads_php.ini')
->withOAuth2Credential($oAuth2Credential)
->build();
Если в качестве аргумента не указан путь к файлу конфигурации, методы fromFile
загружаются из пути к файлу конфигурации по умолчанию, который:
- Значение переменной среды с именем
GOOGLE_ADS_CONFIGURATION_FILE_PATH
, если она установлена. - В противном случае файл
google_ads_php.ini
находится в вашемHOME
каталоге.
$oAuth2Credential = (new OAuth2TokenBuilder())
->fromFile()
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->fromFile()
->withOAuth2Credential($oAuth2Credential)
->build();
Динамическая конфигурация
Эти параметры конфигурации можно устанавливать динамически при создании экземпляров клиентов.
$oAuth2Credential = (new OAuth2TokenBuilder())
->withClientId('INSERT_CLIENT_ID')
// ...
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
->withDeveloperToken('INSERT_DEVELOPER_TOKEN_HERE')
// ...
->build();
Переменные среды конфигурации
Вы можете установить некоторые параметры конфигурации из переменных среды при создании экземпляров клиентов (см. исчерпывающий список ).
Разработчики учетных данных и клиентов предоставляют методы fromEnvironmentVariables
для загрузки настроек из переменных среды:
$oAuth2Credential = (new OAuth2TokenBuilder())
// ...
->fromEnvironmentVariables()
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
// ...
->fromEnvironmentVariables()
->build();
Поля конфигурации
Параметры конфигурации поддерживают несколько полей, организованных по категориям.
- Поля, используемые
OAuth2TokenBuilder
:- Режим приложения
-
[OAUTH2] clientId
: ваш идентификатор клиента OAuth2. -
[OAUTH2] clientSecret
: секрет вашего клиента OAuth2. -
[OAUTH2] refreshToken
: ваш токен обновления OAuth2.
-
- Режим учетной записи службы
-
[OAUTH2] jsonKeyFilePath
: путь к файлу ключей Json. -
[OAUTH2] scopes
: области. -
[OAUTH2] impersonatedEmail
: адрес электронной почты, который нужно выдать за другое лицо.
-
- Режим приложения
- Поля, используемые
GoogleAdsClientBuilder
:-
[GOOGLE_ADS] developerToken
: ваш токен разработчика для доступа к API. -
[GOOGLE_ADS] loginCustomerId
: идентификатор авторизованного клиента , который будет использоваться в запросе. -
[GOOGLE_ADS] linkedCustomerId
: идентификатор связанного клиента. -
[LOGGING] logFilePath
: путь к файлу для ведения журнала. -
[LOGGING] logLevel
: уровень ведения журнала. -
[CONNECTION] proxy
: URL-адрес прокси-сервера, используемый для подключения к Интернету. -
[CONNECTION] transport
: Транспорт. -
[CONNECTION] grpcChannelIsSecure
: является ли канал gRPC безопасным или нет. -
[CONNECTION] grpcChannelCredential
: учетные данные канала gRPC. -
[CONNECTION] unaryMiddlewares
: унарное промежуточное ПО. -
[CONNECTION] streamingMiddlewares
: промежуточное ПО потоковой передачи. -
[CONNECTION] grpcInterceptors
: перехватчики gRPC.
-
Проверка конфигурации
Параметры конфигурации проверяются при создании экземпляров клиентов, а исключения выдаются, если они недействительны. Вот правила:
- Поля
[OAUTH2]
не должны быть установлены одновременно для режима приложения и режима учетной записи службы. - Области
[OAUTH2] jsonKeyFilePath
и[OAUTH2] scopes
должны быть установлены при использовании режима учетной записи службы. -
[OAUTH2] clientId
,[OAUTH2] clientSecret
и[OAUTH2] refreshToken
должны быть установлены при использовании режима приложения. -
[GOOGLE_ADS] developerToken
должен быть установлен всегда. - Если установлено,
[GOOGLE_ADS] loginCustomerId
и[GOOGLE_ADS] linkedCustomerId
должны быть положительными числами. - Если установлено,
[CONNECTION] proxy
должен быть действительным URL-адресом (см. фильтр FILTER_VALIDATE_URL ). - Если установлено,
[LOGGING] logLevel
должен быть допустимым уровнем журнала PSR, написанным заглавными буквами, напримерINFO
. - Если установлено,
[CONNECTION] transport
должно быть либоgrpc
, либоrest
. - Если для
[CONNECTION] transport
установлено значениеgrpc
, транспорт gRPC должен поддерживаться средой (см. руководство по транспорту ). -
[CONNECTION] grpcChannelIsSecure
должно иметьtrue
, если[CONNECTION] transport
не установлено значениеgrpc
. -
[CONNECTION] grpcChannelCredential
можно установить только в том случае, если для[CONNECTION] transport
установлено значениеgrpc
. -
[CONNECTION] grpcChannelCredential
можно установить только в том случае, если[CONNECTION] grpcChannelIsSecure
имеетtrue
.