Я пытаюсь вызвать один из моих сценариев Google из моего google-api-php-client и не могу найти, как это сделать.
Я развернул свое приложение как веб-приложение и получил URL-адрес веб-приложения, который я могу вызвать с помощью curl, но мне нужно назвать его своим «клиентом Google».
Я нашел список приложений внутри моей службы накопителей, но не могу понять, как найти подходящее приложение и как его вызвать. Я даже не знаю, правильно ли это проверять в первую очередь, поскольку я ничего не могу найти в документации.
$googleDrive = new \Google_Service_Drive($this->_googleClient);
$test = $googleDrive->apps->listApps();
var_dump($test);
И в любом случае, если я получаю приложение, оно просто возвращает экземпляр Google_Service_Drive_App, но внутри этого ничего нет, чтобы вызвать скрипт с параметрами моего сообщения.
ОБНОВИТЬ:
Я использую клиентскую библиотеку API Google для PHP
https://developers.google.com/api-client-library/php/start/get_started
https://developers.google.com/api-client-library/php/start/installation
Пользователь аутентифицирован через oAuth с \ Google_Client (); со всеми областями DRIVE для разрешения.
Мой Google Script находится на диске пользователя, и я пытаюсь выполнить его удаленно. Я развернул скрипт как веб-приложение. Ниже вы можете найти URL файла скрипта.
https://script.google.com/macros/s/[my_google_script_id]/exec
По сути, я хочу, чтобы клиентская библиотека API Google для PHP выполняла файл сценария с диска пользователя.
Я попытался использовать класс Google_Http_Request напрямую и выполнить его с помощью Google_Client, он почти сработал, как и ожидалось.
$googleRequest = new \Google_Http_Request($url, 'POST', null, array('post' => 'parameters'));
$this->_googleClient->execute($googleRequest);
Я закончил тем, что использовал запрос CURL, напрямую передавая заголовок «Authorization» с token_type и access_token, и он работал как ожидалось. Я не нашел способа сделать это с помощью клиентской библиотеки Google API для PHP
POST
Authorization: Bearer [your_auth_token]
Content-Length: 0
Других решений пока нет …