как манипулировать PHP-клиентом API Google

1

как manuplate этот код, чтобы получить информацию о книге, передав номер isbn книги

$client = new \Google_Client();
$client->setApplicationName("BestBook");
$client->setAuthConfigFile('temp.json');
$client->addScope(\Google_Service_Drive::DRIVE);
$client->setDeveloperKey("AIzaSyD6OrKhhJiseBimFVJZ_7OV5tyPdg4LxZiY");

$service = new \Google_Service_Books($client);
$results = $service->volumes->listVolumes('Henry David Thoreau');

foreach ($results as $item) {
  echo $item['volumeInfo']['imageLinks']['smallThumbnail'], "<br /> \n";
}

И любая идея, почему она показывает 10 выход, когда я передаю один isbn

  • 1
    что произойдет, если вы смените «Генри Дэвид Торо» на номер isbn?
  • 0
    это работает, но я не знаю, почему он показывает 10 результатов, как 10 изображений
Показать ещё 3 комментария
Теги:
google-api
google-api-php-client

1 ответ

1
Лучший ответ

Пожалуйста, учтите тот факт, что в Google Книги вы найдете ISBN_13 и ISBN_10. Имея это в виду, вам нужно сделать следующее:

$client = new Google_Client();
$client->setApplicationName("BestBook");
$client->setDeveloperKey("asdfkjeriuIEWURkjfaskd");

$optParams = array(
    'filter' => 'ebooks'//,
    //'langRestrict' => 'es',
    //'orderBy' => 'relevance'
 );

$isbnNumber = 9781452052656;
$results = $service->volumes->listVolumes($isbnNumber, $optParams);

// HANDLE RESULT
foreach ($results as $item) {     

    if ($item['volumeInfo']['industryIdentifiers'][0]['identifier'] == $isbnNumber ) { // For ISBN_13 (for ISBN_10 use $item['volumeInfo']['industryIdentifiers'][1]['identifier'] )

    echo " - ".utf8_decode($item['volumeInfo']['title']), "<br />";

    } 
}

Кстати, поскольку вы не получаете доступа к пользовательским данным, а вместо этого просто данные приложения, вам не нужно использовать строки $client->addScope(\Google_Service_Drive::DRIVE); и $client->setAuthConfigFile('temp.json');

Ой! Я почти забыл! Пожалуйста, не публикуйте свой API-ключ здесь, потому что это конфиденциальная информация!

Надеюсь это поможет!

  • 0
    Спасибо за ваш ответ, но он показывает много ошибок, таких как неопределенная переменная $ optparams, и я только что начал работать с API, так что я не знаю, и я прошел настройку конфигурации в temp.json, если я не буду использовать это, то я передам мои ключи API?
  • 0
    sry это только показывает эту ошибку cURL error 7: (см. curl.haxx.se/libcurl/c/libcurl-errors.html )
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню