[js][Drive API v3]ファイル get/update メモ

2022/10/06に公開

認証処理など

JavaScript quickstart | Drive API | Google Developers
https://developers.google.com/drive/api/quickstart/js

Get

ファイルのgetは公式ドキュメントが有用
参考:https://developers.google.com/drive/api/v3/reference/files/get

※alt = 'media' にしないとファイルのデータを持ってこれない

async function getJsonFile(fileId) {
// fileId: files.listsで取得しておく
  try {
    const file = await gapi.client.drive.files.get(
      {fileId: fileId, alt: 'media'},
      {responseType: 'json'}
    );
    return JSON.parse(file.body);
  } catch (err) {
    // manage err
  }
}

Update

参考:https://stackoverflow.com/questions/40600725/google-drive-api-v3-javascript-update-file-contents (2番目のanswerのaddContent() )

async function uploadJsonFile(fileId, data) {
// fileId: files.listsで取得しておく
  try {
    const res = await gapi.client.request({
      path: '/upload/drive/v3/files/' + fileId,
      method: 'PATCH',
      params: {
        uploadType: 'media'
      },
      body: data
    })
    return res;
  } catch (err) {
    // manage err
  }
}

Discussion