я новичок в библиотеке googleads и я столкнулся с проблемой
я добавил библиотеку API Google AdsWords на новый Laravel 5.3.
я звоню и получаю данные, используя INI-файл, но когда я пытаюсь использовать доступ от имени вашего клиента в
эта вики из библиотеки
но это не работает заключительная часть, которую я не понял
4. You can now use the OAuth2 object to make calls using the client library.
use Google\AdsApi\AdWords\AdWordsServices;
use Google\AdsApi\AdWords\AdWordsSessionBuilder;
use Google\AdsApi\Common\OAuth2TokenBuilder;
$session = (new AdWordsSessionBuilder())
->fromFile()
->withOAuth2Credential($oauth2)
->build();
$adWordsServices = new AdWordsServices();
$campaignService =
$adWordsServices->get($session, 'CampaignService', 'v201603', 'cm');
// Make calls using $campaignService.
когда я пытаюсь код в примерах, которые они дали, выдает ошибку Undefined variable: oauth2
я пытаюсь положить его из файла подключения в сеансе и получить его в файле примера, но не работает
еще один вопрос :
где я положил ClientCustomerId от имени вашего клиента?
Спасибо
Прежде всего, вы упускаете маленький шаг. вам нужно OAuth2 экземпляр, как указано в учебнике, как,
session_start();
$oauth2 = new OAuth2([
'authorizationUri' => 'https://accounts.google.com/o/oauth2/v2/auth',
'tokenCredentialUri' => 'https://www.googleapis.com/oauth2/v4/token',
'redirectUri' => '****',
'clientId' => '****',
'clientSecret' => '****',
'scope' => '****'
]);
ClientCustomerId должен быть помещен в файл adsapi_php.ini, который вы можете найти в Github.
через некоторое время я узнаю ответ на мои вопросы:
первый :
когда я пробую код в примерах, которые он дал, выдается ошибка Undefined variable: oauth2
я пытаюсь поместить его из файла подключения в сеанс и получить его в
файл примера, но не работал
ответ на этот вопрос в вики они делают код в одном файле. так что если вы хотите, чтобы код работал, поместите его в один файл. и если вы хотите поместить его в другой файл или использовать один oauth2 для нескольких файлов, вам нужно просто передать его
через запрос маршрута
или через промежуточное ПО
(Laravel 5. * $request->attributes->add(['the_name_you_want' => $client]);
и вы можете получить его через этот код $client = \Request::get('the_name_you_want')
)
на второй вопрос:
где я положил ClientCustomerId от имени вашего клиента?
это легко найти, просто поместите его в селекторную часть, как это
$session = (new AdWordsSessionBuilder())
->fromFile()
->withClientCustomerId('xxx-xxx-xxxx') //change it to what you want
->withOAuth2Credential($client)
->build();
и это последний из моих вопросов
спасибо за помощь, кто пытается;)