Как я могу получить все файлы в указанной папке c? - PullRequest
0 голосов
/ 12 апреля 2020

Я нашел это как решение, но оно не сработало для меня:

$ optParams = array ('pageSize' => 10, 'fields' => "nextPageToken, files ( contentHints / thumbnail, fileExtension, iconLink, id, имя, размер, thumbnailLink, webContentLink, webViewLink, mimeType, parent) ", 'q' =>" '. $ folderId. "' in parent"); $ results = $ service-> files-> listFiles ($ optParams);

Вот мой код:

$ client-> setClientSecret ('xxxxxx'); $ Client-> setRedirectUri ( 'https://wosbc.com/oauth2callback.php'); $ Client-> setScopes ( 'https://www.googleapis.com/auth/readonly'); $ Client-> setAccessType ( 'отсутствует'); $ client-> setPrompt ('accord');

$ credentialsPath = "credentials. json";

if (file_exists ("credentials. json")) {$ access_token = (file_get_contents ("учетные данные. json")); $ Client-> setAccessToken ($ access_token); // Refre sh токен, если срок его действия истек. if ($ client-> isAccessTokenExpired ()) {echo "accesstoken expired
"; $ Client-> fetchAccessTokenWithRefreshToken ($ client-> getRefreshToken ()); file_put_contents ($ credentialsPath, json_encode ($ client-> getAccessToken ())); echo "сохраненный getAccessToken
"; } $ drive_service = new Google_Service_Drive ($ client); // $ mp3array = $ drive_service-> files-> listFiles (array ()) -> getFiles (); работает, но не перечисляет по папке $ folderid = "xxxxxxxxx";
$ optParams = array ('pageSize' => 10, 'fields' => "id, name", 'q' => "'". $ folderId. "'в родителях"); $ mp3array = $ drive_service-> files-> listFiles ($ optParams);

Извините за форматирование кода. Это привело к следующей ошибке:

Неустранимая ошибка: Uncaught Google_Service_Exception: {"error": {"errors": [{"domain": "global", "reason": "notFound", " message ":" Файл не найден:. "," locationType ":" параметр "," location ":" fileId "}]," code ": 404," message ":" Файл не найден:. " }} в /home/wosbccom/public_html/google-api-php-client-2.4.1/src/Google/Http/REST.php:119 трассировки стека: # 0 / home / wosbccom / public_html / google -api- php -client-2.4.1 / src / Google / Http / REST. php (94): Google_Http_REST :: decodeHttpResponse (Object (GuzzleHttp \ Psr7 \ Response), объект (GuzzleHttp \ Psr7 \ Request) , 'Google_Service _...') # 1 /home/wosbccom/public_html/google-api-php-client-2.4.1/src/Google/Task/Runner.php(176): Google_Http_REST :: doExecute (Объект (GuzzleHttp \ Client), Объект (GuzzleHttp \ Psr7 \ Request), 'Google_Service _...') # 2 /home/wosbccom/public_html/google-api-php-client-2.4.1/src/Google /Http/REST.php(58): Google_Task_Runner-> run () # 3 /home/wosbccom/public_html/google-api-php-client-2.4.1/src/Google/Client.php (842): Google_Http_REST :: execute (Object (в /home/wosbccom/public_html/google-api-php-client-2.4.1/src/Google/Http/REST.php в строке 119

Можете ли вы сказать мне, что я сделал не так?

1 Ответ

1 голос
/ 14 апреля 2020

В вашем скрипте $ folderid = "xxxxxxxxx"; объявляется как $ folderid. Но $ folderId используется в 'q' => "'". $ FolderId. "' В родителях". Я думаю, что эта орфографическая ошибка между мной и мной является причиной вашего текущего сообщения об ошибке. Можете ли вы проверить свой сценарий, изменив это? Таким образом, если сообщение об ошибке не будет удалено или изменено, я приношу свои извинения.

Пожалуйста, измените ваш скрипт следующим образом.

В вашем скрипте $folderid = "xxxxxxxxx"; объявлен как $folderid. Но $folderId используется в 'q' => "'".$folderId."' in parents". Я думаю, что эта орфографическая ошибка между i и I является причиной вашего текущего сообщения об ошибке.

Пожалуйста, измените следующим образом.

От:

$folderid = "xxxxxxxxx";

До:

$folderId = "xxxxxxxxx";

или

От:

'q' => "'".$folderId."' in parents

До:

'q' => "'".$folderid."' in parents
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...