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
方法會從預設的設定檔路徑載入,也就是:
- 環境變數名稱的值 (如果有設定的話),名為
GOOGLE_ADS_CONFIGURATION_FILE_PATH
。 - 如果不是,則
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();
設定環境變數
您可以在執行個體化執行個體時,從環境變數中進行一些配置設定 (請參閱完整清單)。
憑證和用戶端建構工具都會提供 fromEnvironmentVariables
方法,以從環境變數載入設定:
$oAuth2Credential = (new OAuth2TokenBuilder())
// ...
->fromEnvironmentVariables()
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
// ...
->fromEnvironmentVariables()
->build();
設定欄位
配置設定支援數個以類別分類的欄位。
OAuth2TokenBuilder
使用的欄位:- 應用程式模式
[OAUTH2] clientId
:您的 OAuth2 用戶端 ID。[OAUTH2] clientSecret
:您的 OAuth2 用戶端密鑰。[OAUTH2] refreshToken
:您的 OAuth2 更新憑證。
- 服務帳戶模式
[OAUTH2] jsonKeyFilePath
:Json 金鑰檔案路徑。[OAUTH2] scopes
:範圍。[OAUTH2] impersonatedEmail
:要模擬的電子郵件。
- 應用程式模式
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 攔截器。
設定驗證
執行個體化用戶端時,系統會檢查配置設定,而無效時則會擲回例外狀況。相關規則如下:
- 應用程式模式和服務帳戶模式不得同時設定
[OAUTH2]
欄位。 - 使用服務帳戶模式時,必須設定
[OAUTH2] jsonKeyFilePath
和[OAUTH2] scopes
。 - 使用應用程式模式時,必須設定
[OAUTH2] clientId
、[OAUTH2] clientSecret
和[OAUTH2] refreshToken
。 [GOOGLE_ADS] developerToken
必須一律設定。- 如果設定這個值,
[GOOGLE_ADS] loginCustomerId
和[GOOGLE_ADS] linkedCustomerId
必須為正數。 - 如果已設定,
[CONNECTION] proxy
必須是有效的網址 (請參閱篩選器「FILTER_VALIDATE_URL」)。 - 如有設定,
[LOGGING] logLevel
必須為大寫英文字母的有效 PSR 記錄層級,例如INFO
。 - 如果設定這個值,
[CONNECTION] transport
必須是grpc
或rest
。 - 如果
[CONNECTION] transport
設為grpc
,則環境必須支援 gRPC 傳輸 (請參閱傳輸指南)。 - 如果
[CONNECTION] transport
未設為grpc
,[CONNECTION] grpcChannelIsSecure
必須為true
。 - 只有在
[CONNECTION] transport
設為grpc
時,才能設定[CONNECTION] grpcChannelCredential
。 [CONNECTION] grpcChannelCredential
只能在[CONNECTION] grpcChannelIsSecure
為true
時設定。