Я должен признать, что не смог найти несколько простых примеров кода, которые дали бы мне фору в этом новом API Shopping Content v2.
Первая задача: получить список продуктов из API.
Шимпл, верно? Возможно, но я не могу понять, как это все связано.
Я могу создать свой объект Google_Client, тогда я считаю, что мне нужно сделать этот запрос...
https://www.googleapis.com/content/v2/MERCHANT_ID_WAS_HERE/products
...возможно, с помощью метода Google_Service_ShoppingContent_Products_Resource listProducts().
Дело в том, что для создания экземпляра Google_Service_ShoppingContent_Products_Resource мне нужно передать следующие аргументы...
- $сервис
- $serviceName
- $resourceName
- $ресурс
... но я не могу найти ничего, чтобы сказать мне, что это такое.
Может ли кто-нибудь указать мне на простой пример этого, который работает?
Ответ 1 · рейтинг 1 · WalterEgo
Как и во многих других случаях, рабочий код, который у нас получился, не был слишком многословным, как только мы выяснили, каким он должен быть на самом деле.
Итак, теперь у нас есть класс, который включает в себя эти два метода, которые вызываются в конструкторе...
private function setUpApiClient()
{
$this->setApiClient(new Google_Client());
$this->getApiClient()->setApplicationName(GOOGLE_API_SHOPPING_CONTENT_APP_NAME);
$this->getApiClient()->setAssertionCredentials(
new Google_Auth_AssertionCredentials(
GOOGLE_API_EMAIL,
array('https://www.googleapis.com/auth/structuredcontent'),
file_get_contents(GOOGLE_API_PRIVATE_KEY_FILE)
)
);
$this->getApiClient()->setClientId(GOOGLE_API_CLIENT_ID);
$this->getApiClient()->setAccessType('offline_access');
}
private function setUpShoppingContent()
{
$this->setShoppingContent(
new Google_Service_ShoppingContent($this->getApiClient())
);
}
Тогда такие вещи просто работают...
$result = $this->getShoppingContent()->products->listProducts(
self::CLIENT_ID,
array('pageToken' => $nextPageToken)
);
Я надеюсь, что это поможет кому-то еще запустить это быстрее, чем я!