設定

Google Ads API PHP 用戶端程式庫提供多項設定, 可用來自訂程式庫行為

設定檔

大部分的配置設定都可以儲存在 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 方法會從預設設定檔路徑載入:

  1. 名為「 GOOGLE_ADS_CONFIGURATION_FILE_PATH (如果有設定的話)。
  2. 否則,位於 HOME 目錄中的 google_ads_php.ini 檔案。
$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();

設定環境變數

您可以在何時透過環境變數 建立用戶端執行個體 (請參閱 list)。

憑證和用戶端建構工具都會提供 fromEnvironmentVariables 從環境變數載入設定的方法:

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

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

設定欄位

組態設定支援多個依類別分類的欄位。

  1. OAuth2TokenBuilder 使用的欄位:
    • 應用程式模式
      • [OAUTH2] clientId:您的 OAuth2 用戶端 ID。
      • [OAUTH2] clientSecret:您的 OAuth2 用戶端密鑰。
      • [OAUTH2] refreshToken:您的 OAuth2 更新憑證。
    • 服務帳戶模式
      • [OAUTH2] jsonKeyFilePath:Json 金鑰檔案路徑。
      • [OAUTH2] scopes:範圍。
      • [OAUTH2] impersonatedEmail:要冒用他人身分的電子郵件。
  2. GoogleAdsClientBuilder 使用的欄位:
    • [GOOGLE_ADS] developerToken:用來存取 API 的開發人員權杖。
    • [GOOGLE_ADS] loginCustomerId授權的 ID 在要求中使用的客戶
    • [GOOGLE_ADS] linkedCustomerId:已連結客戶 ID。
    • [LOGGING] logFilePath:記錄的檔案路徑。
    • [LOGGING] logLevel:記錄層級。
    • [CONNECTION] proxy:用於網際網路連線的 Proxy 伺服器網址。
    • [CONNECTION] transport:傳輸。
    • [CONNECTION] grpcChannelIsSecure:gRPC 通道是安全或是 而不是
    • [CONNECTION] grpcChannelCredential:gRPC 管道憑證。
    • [CONNECTION] unaryMiddlewares:一元中介軟體。
    • [CONNECTION] streamingMiddlewares:串流中介軟體。
    • [CONNECTION] grpcInterceptors:gRPC 攔截器。
  3. [GAPIC] useGapicV2Source:是否使用 GAPIC v2 來源 程式碼

設定驗證

將用戶端和例外狀況執行個體化時,系統會檢查配置設定 就會擲回。規則如下:

  1. 不得同時為應用程式模式和服務設定「[OAUTH2]」欄位 帳戶模式同時啟用。
  2. 使用 [OAUTH2] jsonKeyFilePath[OAUTH2] scopes 時必須設定 服務帳戶模式
  3. [OAUTH2] clientId[OAUTH2] clientSecret[OAUTH2] refreshToken必須 必須在應用程式模式下設定
  4. 必須一律設定「[GOOGLE_ADS] developerToken」。
  5. 如果已設定此屬性,[GOOGLE_ADS] loginCustomerId[GOOGLE_ADS] linkedCustomerId 必須是正數。
  6. 如果已設定,[CONNECTION] proxy 必須是有效的網址 (請參閱篩選器 FILTER_VALIDATE_URL)。
  7. 如果設定,[LOGGING] logLevel 必須是有效的 PSR 記錄 等級 大寫字母,例如 INFO
  8. 如果設定此屬性,[CONNECTION] transport 必須為 grpcrest
  9. 如果將 [CONNECTION] transport 設為 grpc,gRPC 傳輸必須 支援的環境 (請參閱指南傳輸指南)。
  10. [CONNECTION] transport 未設為 grpc 時,[CONNECTION] grpcChannelIsSecure 必須為 true
  11. 只有在 [CONNECTION] transport 設為 grpc 時,才能設定「[CONNECTION] grpcChannelCredential」。
  12. 只有在[CONNECTION] grpcChannelIsSecuretrue 時,才能設定[CONNECTION] grpcChannelCredential