Quindi ho riscontrato strani problemi con il caricamento PHP con GAPI. Il file viene effettivamente creato sul disco, ma per qualche motivo i dati non arriva a Google e crea solo un file con 0 byte.Google Drive PHP API file caricato vuoto
Ecco il mio codice:
function uploadFile($service, $title, $description, $parentId, $mimeType, $filepath) {
$mimeType = "image/png";
$title = "test.png";
$file = new Google_Service_Drive_DriveFile();
$file->setTitle($title);
$file->setDescription($description);
$file->setMimeType($mimeType);
// Set the parent folder.
if ($parentId != null) {
$parent = new Google_Service_Drive_ParentReference();
$parent->setId($parentId);
$file->setParents(array($parent));
}
try {
$data = file_get_contents();
$createdFile = $service->files->insert($file, array(
'data' => $data,
'mimeType' => $mimeType,
));
// Uncomment the following line to print the File ID
// print 'File ID: %s' % $createdFile->getId();
//return $createdFile;
} catch (Exception $e) {
echo "An error occurred: " . $e->getMessage();
}
}
Tutto è autenticato quindi so che non è il problema. Quando ho uscita $ i dati, ottengo il casino di merda che di solito si ottiene quando si tira un file in modo So che non è il problema .. Tutti gli ambiti dovrebbe essere proprio ma qui sono in ogni modo:
$client->addScope("https://www.googleapis.com/auth/drive");
$client->addScope("https://www.googleapis.com/auth/drive.file");
$client->addScope("https://www.googleapis.com/auth/drive.appdata");
$client->addScope("https://www.googleapis.com/auth/drive.scripts");
$client->addScope("https://www.googleapis.com/auth/drive.apps.readonly");
$client->addScope("https://www.googleapis.com/auth/drive.metadata.readonly");
$client->addScope("https://www.googleapis.com/auth/drive.readonly");
No la documentazione che posso trovare su questo problema quindi qualsiasi aiuto sarebbe davvero apprezzato!
la cosa più importante è il 'uploadType' => 'media' –
Hallelujah! Il problema con l'avvio di quickstart.php e il salto a destra nelle operazioni di scrittura: non ti hanno impostato per questo, no non l'hanno fatto. Ti fanno cacciare i poteri distruttivi, che è probabilmente una buona idea :) –