Konfiguracja

Biblioteka klienta PHP interfejsu Google Ads API udostępnia kilka ustawień konfiguracji, których możesz użyć do dostosowania działania biblioteki.

Plik konfiguracji

Większość z tych ustawień konfiguracji można przechowywać w plikach ini i używać ich podczas tworzenia instancji klientów, na przykład google_ads_php.ini.

Dane logowania i kreatory klientów udostępniają metody fromFile do wczytywania ustawień z takich plików:

$oAuth2Credential = (new OAuth2TokenBuilder())
    ->fromFile('/path/to/google_ads_php.ini')
    ->build();

$googleAdsClient = (new GoogleAdsClientBuilder())
    ->fromFile('/path/to/google_ads_php.ini')
    ->withOAuth2Credential($oAuth2Credential)
    ->build();

Jeśli jako argument nie podano ścieżki pliku konfiguracji, metody fromFile wczytują się z domyślnej ścieżki pliku konfiguracji, która jest następująca:

  1. Wartość zmiennej środowiskowej o nazwie GOOGLE_ADS_CONFIGURATION_FILE_PATH (jeśli jest ustawiona).
  2. W przeciwnym razie plik google_ads_php.ini w katalogu HOME.
$oAuth2Credential = (new OAuth2TokenBuilder())
    ->fromFile()
    ->build();

$googleAdsClient = (new GoogleAdsClientBuilder())
    ->fromFile()
    ->withOAuth2Credential($oAuth2Credential)
    ->build();

Konfiguracja dynamiczna

Te ustawienia konfiguracji możesz wprowadzać dynamicznie podczas tworzenia instancji klientów.

$oAuth2Credential = (new OAuth2TokenBuilder())
    ->withClientId('INSERT_CLIENT_ID')
    // ...
    ->build();

$googleAdsClient = (new GoogleAdsClientBuilder())
    ->withOAuth2Credential($oAuth2Credential)
    ->withDeveloperToken('INSERT_DEVELOPER_TOKEN_HERE')
    // ...
    ->build();

Zmienne środowiskowe konfiguracji

Niektóre ustawienia konfiguracji możesz zmieniać na podstawie zmiennych środowiskowych podczas inicjowania klientów (zobacz pełną listę).

Dane logowania i kreatory klientów udostępniają metody fromEnvironmentVariables do wczytywania ustawień ze zmiennych środowiskowych:

$oAuth2Credential = (new OAuth2TokenBuilder())
    // ...
    ->fromEnvironmentVariables()
    ->build();

$googleAdsClient = (new GoogleAdsClientBuilder())
    ->withOAuth2Credential($oAuth2Credential)
    // ...
    ->fromEnvironmentVariables()
    ->build();

Pola konfiguracji

Ustawienia konfiguracji obsługują kilka pól uporządkowanych według kategorii.

  1. Pola używane przez grupę OAuth2TokenBuilder:
    • Tryb aplikacji
      • [OAUTH2] clientId: identyfikator klienta OAuth2.
      • [OAUTH2] clientSecret: tajny klucz klienta OAuth2.
      • [OAUTH2] refreshToken: token odświeżania OAuth2.
    • Tryb konta usługi
      • [OAUTH2] jsonKeyFilePath: ścieżka pliku klucza JSON.
      • [OAUTH2] scopes: zakresy.
      • [OAUTH2] impersonatedEmail: adres e-mail, pod który chcesz się podszywać.
  2. Pola używane przez grupę GoogleAdsClientBuilder:
    • [GOOGLE_ADS] developerToken: token programisty pozwalający na dostęp do interfejsu API.
    • [GOOGLE_ADS] loginCustomerId: identyfikator autoryzowanego klienta, którego chcesz użyć w żądaniu.
    • [GOOGLE_ADS] linkedCustomerId: identyfikator połączonego klienta.
    • [LOGGING] logFilePath: ścieżka pliku logowania.
    • [LOGGING] logLevel: poziom rejestrowania.
    • [CONNECTION] proxy: adres URL serwera proxy używanego do połączenia z internetem.
    • [CONNECTION] transport: transport.
    • [CONNECTION] grpcChannelIsSecure: określa, czy kanał gRPC jest bezpieczny.
    • [CONNECTION] grpcChannelCredential: dane logowania do kanału gRPC.
    • [CONNECTION] unaryMiddlewares: jednoargumentowe elementy pośredniczące.
    • [CONNECTION] streamingMiddlewares: elementy pośredniczące do strumieniowego przesyłania danych.
    • [CONNECTION] grpcInterceptors: elementy przechwytujące gRPC.
  3. [GAPIC] useGapicV2Source: określa, czy przy tworzeniu klientów usługi należy używać kodu źródłowego GAPIC w wersji 2.

Sprawdzanie poprawności konfiguracji

Ustawienia konfiguracji są sprawdzane podczas tworzenia instancji klientów, a wyjątki są zgłaszane w przypadku nieprawidłowych. Oto reguły:

  1. Pola [OAUTH2] nie mogą być ustawione jednocześnie dla trybu aplikacji i trybu konta usługi.
  2. W przypadku korzystania z trybu konta usługi należy ustawić zasady [OAUTH2] jsonKeyFilePath i [OAUTH2] scopes.
  3. W trybie aplikacji musisz ustawić [OAUTH2] clientId, [OAUTH2] clientSecret i [OAUTH2] refreshToken.
  4. Pole [GOOGLE_ADS] developerToken musi być zawsze ustawione.
  5. Jeśli jest ustawiony, [GOOGLE_ADS] loginCustomerId i [GOOGLE_ADS] linkedCustomerId muszą być liczbami dodatnimi.
  6. Jeśli jest ustawiony, [CONNECTION] proxy musi być prawidłowym adresem URL (patrz filtr FILTER_VALIDATE_URL).
  7. Jeśli jest ustawiony, [LOGGING] logLevel musi być prawidłowym poziomem logu PR pisanym wielkimi literami, np. INFO.
  8. Jeśli jest ustawiona, [CONNECTION] transport musi mieć wartość grpc lub rest.
  9. Jeśli [CONNECTION] transport ma wartość grpc, transport gRPC musi być obsługiwany przez środowisko (patrz przewodnik transport).
  10. Wartość [CONNECTION] grpcChannelIsSecure musi mieć wartość true, gdy [CONNECTION] transport nie ma wartości grpc.
  11. Pole [CONNECTION] grpcChannelCredential można ustawić tylko wtedy, gdy zasada [CONNECTION] transport ma wartość grpc.
  12. Wartość [CONNECTION] grpcChannelCredential można ustawić tylko wtedy, gdy pole [CONNECTION] grpcChannelIsSecure ma wartość true.