Клиентская библиотека 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.