2016-02-09 6 views
7

Ich kann nicht scheinen, Datei in Google Drive mit dem folgenden Code zu aktualisieren, alles geht gut, aber Datei bleibt unberührt? Ich arbeite mit v3 api.Wie update Datei in Google Drive v3 PHP

function updateFile($service, $fileId, $data) { 
     try { 
      $emptyFile = new Google_Service_Drive_DriveFile(); 
      $file = $service->files->get($fileId); 
      $service->files->update($fileId, $emptyFile, array(
       'data' => $data, 
       'mimeType' => 'text/csv', 
       'uploadType' => 'multipart' 
      )); 
     } catch (Exception $e) { 
      print "An error occurred: " . $e->getMessage(); 
     } 
    } 
+0

Können Sie die vollständige Anfrage und Antwort dafür bereitstellen? Haben Sie mit anderen Dateitypen (d. H. Google Docs) versucht? Funktioniert das entsprechend? – Andres

Antwort

12

ich es geschafft, es zu tun, müssen Sie leere Datei als zweites Argument setzen, nicht sicher, warum, aber dieser Beitrag hat mir sehr geholfen: Google Drive API v3 Migration

Dies ist Endlösung:

function updateFile($service, $fileId, $data) { 
     try { 
      $emptyFile = new Google_Service_Drive_DriveFile(); 
      $service->files->update($fileId, $emptyFile, array(
       'data' => $data, 
       'mimeType' => 'text/csv', 
       'uploadType' => 'multipart' 
      )); 
     } catch (Exception $e) { 
      print "An error occurred: " . $e->getMessage(); 
     } 
    } 

Dabei ist $ fileId die Datei, die Sie aktualisieren, und die Daten sind neue Inhalte. Sie aktualisieren Ihre Datei.

Vergessen Sie nicht, Google Drive nach diesem zu aktualisieren, weil es Vorschau nicht ändert und ich verlor eine Stunde daran: /. Hoffe das hilft.

+1

Vielen Dank, dass die Google Drive-Vorschau nicht aktualisiert wurde. Du hast gerade ME zu dieser Stunde gerettet. *Fauststoß* –

Verwandte Themen