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
時設定。