雲端圖片

DriveApp連結雲端資料夾,取得圖片檔案Url,回傳給html的SRC。


顯示圖片.html,img.src = 取回的雲端資料夾檔案url

程式碼.gs,取得方式:

1.  開啟雲端硬碟資料夾,DriveApp.getFolderById()

2.  以檔名取得雲端檔案,getFilesByName()

3.  檢查檔是否存在、取得檔案物件。hasNext()next()

4.取得檔案物件網址,file.getDownloadUrl()

5.傳回html,return


show_pic.html


<!DOCTYPE html>

<html>

<head>

  <base target="_top">

<style>

  img {

    max-width: 100px;

    display: block;

    margin: 0 auto; }

</style>

</head>

<body>

  <div>

    <img src="" id="pic" alt="圖片讀取中">

  </div>

  <script>

    google.script.run.withSuccessHandler(function(imageUrl) {

      document.getElementById('pic').src = imageUrl;

    }).getImageUrl("岡中校徽-01.png" );

  </script>

</body>

</html>


檢查雲端資料夾內檔案名稱是否存在,若存在則傳該檔案url回html

code.gs

var folderId = '雲端資料夾ID';


function getImageUrl(fileName) {  

  var folder = DriveApp.getFolderById(folderId);

  var files = folder.getFilesByName(fileName);


  if (files.hasNext()) {

    var file = files.next();

    return file.getDownloadUrl();

  }  

  return '圖片未找到';

}

getDownloadUrl() 與 getUrl()不一樣

顯示圖片的scr用的是getDownloadUrl() 

getDownloadUrl()抓到的: https://drive.google.com/uc?id=系統自動給的編號&export=download

getUrl()抓到的: https://drive.google.com/file/d/系統自動給的編號/view?usp=drivesdk