2016-05-16 36 views
-1

this questionDrive REST APIを使用してGoogleスプレッドシートを更新すると便利です。GoogleスプレッドシートAPI + Javascriptを使用してスプレッドシートを読む方法

現在の内容を上書きします。私は現在の内容を読み込み、変更してから更新したいと思います。

現在のスプレッドシートを読み込むにはどうすればよいですか?

+0

[リンクされたドキュメント](https://developers.google.com/drive/v3/reference/files/get)の残りの部分をお読みになりましたか?あるいは、コードを書くだけでいいのですか? –

+0

私はGETを試みました。これは "ファイルのメタデータまたはコンテンツをIDで取得します"と記述されています。それはうまく動作しますが、実際のコンテンツではなく、メタデータを返すようです。 (私は、 "https://content.googleapis.com/drive/v3/files/" + SHEET_ID + "?key =" + API_KEY;のURLを持つ$ .ajax()呼び出しを使用していました)。 – ghenne

答えて

0

これは(資格情報が順番にあり、あなたが許可されていると仮定して)動作します:

 
function getFileInfo(fileId, callback) { 
    try { 
     gapi.client.drive.files.get({ 
      fileId: fileId, 
      fields: "appProperties,capabilities,contentHints,createdTime,description,explicitlyTrashed,fileExtension,folderColorRgb,fullFileExtension,headRevisionId,iconLink,id,imageMediaMetadata,isAppAuthorized,kind,lastModifyingUser,md5Checksum,mimeType,modifiedByMeTime,modifiedTime,name,originalFilename,ownedByMe,owners,parents,permissions,properties,quotaBytesUsed,shared,sharedWithMeTime,sharingUser,size,spaces,starred,thumbnailLink,trashed,version,videoMediaMetadata,viewedByMe,viewedByMeTime,viewersCanCopyContent,webContentLink,webViewLink,writersCanShare", 
     }).then(function(response) { 
      info = JSON.parse(response.body); 
      callback(info); 
     }) 
    } catch (err) { 
     console.log('Something bad happened: ' + err); 
    } 
} 

それは(今回のような)既知のすべてのメタデータフィールドを返します。リストを必要なものに戻したい場合があります。しかし、実際のスプレッドシートの内容は返されません。そのため、あなたはexport APIを使用する必要があります:

 
function getSpreadsheet(fileId, callback) { 
    var spreadsheet; 
    try { 
     gapi.client.drive.files.export({ 
      fileId: fileId, 
      mimeType: 'text/csv' 
     }).then(function(response) { 
      spreadsheet = Papa.parse(response.body).data; 
      callback(spreadsheet); 
     }) 
    } catch (err) { 
     console.log('Something bad happened: ' + err); 
    } 
} 

データは、CSV形式の文字列としてリターンです。 Papa.parseを使用して2D配列に変換します。

関連する問題