src/Google/Ads/GoogleAds/vX
içindeki kaynak kodu
Google Ads API PHP istemci kitaplığının dizini (burada X, Google Ads API'dir)
sürümü, GAPIC (Oluşturulan API İstemcisi) kullanılarak otomatik olarak oluşturulur
Yayınlananlara göre oluşturucu
proto
dosyaları kullanabilirsiniz.
Oluşturulan kaynak kodu, daha sonra özelliklere ve özelliklere referanslar
Google Ads API ile çalışan hizmet istemcilerini oluşturmak için gereken sınıfları
çağrısı ile oluşturulan GoogleAdsClient
sınıfı
GoogleAdsClientBuilder::build()
. Hem GoogleAdsClient
hem de
GoogleAdsClientBuilder
şu konumda manuel olarak oluşturulmuş sınıflardır:
src/Google/Ads/GoogleAds/Lib/vX/
.
GAPIC v2 kaynak kodu
v20.1.0 sürümünden itibaren, istemci kitaplığı
GAPIC kaynak kodunun
Bir istek nesnesini hizmete iletmeyi destekleyen src/Google/Ads/GoogleAds/vX
müşterilerin yöntemlerine göz atın. GAPIC v2 adı verilen bu yeni sürüm, aynı zamanda
ileride yeni özellikler için. Önceki GAPIC kaynak kodu olan GAPIC v1,
oluşturulmaya devam ediyor ve 2023'ün sonuna kadar her sürümle birlikte sunuluyor.
Google Ads API PHP istemci kitaplığı, bağlanılacak sürümü seçmenize olanak tanır
Yapılandırma ayarını kullanarak GoogleAdsClient
useGapicV2Source
Bu ayar
true
ise istemci kitaplığı, şunları oluşturan bir GoogleAdsClient
nesnesi oluşturur:
GAPIC v2 hizmet istemcileri.
Oluşturulan sınıf konumları
Aşağıda, iki sınıf türü vardır:
GAPIC tarafından oluşturulan istemciler ve ilgili dosyalar | GAPIC s1
src/Google/Ads/GoogleAds/VX/Services/Gapic/ |
İşlenmiş istemciler | GAPIC s1
src/Google/Ads/GoogleAds/VX/Services/ src/Google/Ads/GoogleAds/VX/Services/Client/ |
Kullanım
GAPIC v1, her istek parametresini doğrudan bir yönteme iletmenizi gerektirir.
GAPIC v2 ise bunun yerine bir istek nesnesi iletmenizi gerektirir. Not:
Bazı durumlarda, GAPIC'den itibaren istek nesnesi oluşturmak için birden fazla yöntem
v2, zorunlu geçirmek için build()
adında kullanışlı bir yöntem de oluşturur.
parametreleridir.
Örnek 1.1: Gerekli parametrelere sahip yöntemler
Aşağıdaki örnek kod, GAPIC'de CampaignService::mutate()
çağrısını karşılaştırmaktadır
v1 ve v2. Tüm parametrelerin ($customerId
ve $operations
)
gerekli parametreler olduğundan, her iki parametreyi de kabul eden build()
oluşturulur
yazmalısınız.
Desen 1 | GAPIC s1
$campaignServiceClient = $googleAdsClient->getCampaignServiceClient(); $response = $campaignServiceClient->mutateCampaigns( $customerId, $campaignOperations ); $campaignServiceClient = $googleAdsClient->getCampaignServiceClient(); $response = $campaignServiceClient->mutateCampaigns( MutateCampaignsRequest::build( $customerId, $campaignOperations ) ); |
Desen 2 | GAPIC s1
N/A $campaignServiceClient = $googleAdsClient->getCampaignServiceClient(); $request = (new MutateCampaignsRequest()) ->setCustomerId($customerId) ->setCampaignOperations($campaignOperations); $response = $campaignServiceClient->mutateCampaigns($request); |
Örnek 1.2: Gerekli parametreler ve isteğe bağlı parametreler içeren yöntemler
Aşağıdaki örnek kod, GoogleAdsServiceClient::search()
çağrısını
GAPIC v1 ve v2. Bu örnekte, GAPIC'de oluşturulan build()
v2 kaynak kodu yalnızca iki parametreyi ($customerId
ve $query
) kabul eder çünkü
bunlar gerekli parametrelerdir. Eşleşen sonuçların toplam sayısını istemek için
LIMIT
ifadesini yok sayarak bunu açıkça belirtmek için
setReturnTotalResultsCount()
. Alternatif olarak, tüm parametreleri
birlikte SearchGoogleAdsRequest
öğesinin oluşturucusu ile birlikte gösterilmektedir.
Desen 1 | GAPIC s1
$googleAdsServiceClient = $googleAdsClient->getGoogleAdsServiceClient(); $response = $googleAdsServiceClient->search( $customerId, $query, ['returnTotalResultsCount' => true] ); $googleAdsServiceClient = $googleAdsClient->getGoogleAdsServiceClient(); $response = $googleAdsServiceClient->search( SearchGoogleAdsRequest::build($customerId, $query) ->setReturnTotalResultsCount(true) ); |
Desen 2 | GAPIC s1
N/A $googleAdsServiceClient = $googleAdsClient->getGoogleAdsServiceClient(); $request = (new SearchGoogleAdsRequest()) ->setCustomerId($customerId) ->setQuery($query) ->setReturnTotalResultsCount(true); $response = $googleAdsServiceClient->search($request); |
Kalıp 3 | GAPIC s1
N/A $googleAdsServiceClient = $googleAdsClient->getGoogleAdsServiceClient(); $request = (new SearchGoogleAdsRequest([ 'customer_id' => $customerId, 'query' => $query, 'return_total_results_count' => true ]); $response = $googleAdsServiceClient->search($request); |
2. Örnek: Yalnızca isteğe bağlı parametreleri olan yöntemler
Şu konumdaki GeoTargetConstantServiceClient::suggestGeoTargetConstants()
aramasını karşılaştırın:
GAPIC v1 ve v2. Tüm parametreleri
GeoTargetConstantServiceClient::suggestGeoTargetConstants()
isteğe bağlıdır,
Bu durumda, GAPIC v2 kaynak kodunda build()
oluşturulmaz.
istek nesnesini kendiniz oluşturmanız gerekir.
Desen 1 | GAPIC s1
$geoTargetConstantServiceClient = $googleAdsClient->getGeoTargetConstantServiceClient(); $response = $geoTargetConstantServiceClient->suggestGeoTargetConstants([ 'locale' => $locale, 'countryCode' => $countryCode, 'locationNames' => new LocationNames(['names' => $locationNames]) ]); $geoTargetConstantServiceClient = $googleAdsClient->getGeoTargetConstantServiceClient(); $request = (new SuggestGeoTargetConstantsRequest()) ->setLocale($locale) ->setCountryCode($countryCode) ->setLocationNames(new LocationNames(['names' => $locationNames])); $response = $geoTargetConstantServiceClient->suggestGeoTargetConstants($request); |
Desen 2 | GAPIC s1
N/A $geoTargetConstantServiceClient = $googleAdsClient->getGeoTargetConstantServiceClient(); $response = $geoTargetConstantServiceClient->suggestGeoTargetConstants( new SuggestGeoTargetConstantsRequest([ 'locale' => $locale, 'country_code' => $countryCode, 'location_names' => new LocationNames(['names' => $locationNames]) ]) ); |