搜尋

Vibe Coding 實戰:用 Google Drive 輕鬆打造「檔案&作業上傳系統」

不知道大家是否有遇過,當要從學生、客戶或活動參與者收集檔案,卻卡在「寄信附件太大」或「通訊軟體傳檔期限過期」的狀況呢?這個 Vibe Coding 範例會使用 Google Drive 和 Google Apps Script 的方式,輕鬆打造出精美好用的「檔案上傳網頁」!

更多參考:Vibe Coding 全方位開發導讀

快速導覽:

Vibe Coding 實戰:免寫程式!用 Google Drive 輕鬆打造「檔案&作業上傳系統」

Step 1、Google Drive 建立上傳檔案資料夾

用 Google 帳號登入自己的 Google 雲端硬碟,建立一個資料夾 ( 如果是要讓學生交作業,可暫時命名為 「XX 課程」),並在資料夾中再建立一個名為「upload」的資料夾,接著畫面停留在 XX 課程的資料夾中。

Step 1、Google Drive 建立上傳檔案資料夾

Step 2、Vibe Coding 相關程式碼

開啟自己常用的生成式 AI 工具,準備透過 Vibe Coding 產生對應的網頁,首先確認檔案上傳要有哪些功能:

  • 可以使用「選擇」和「拖拉」兩種方式上傳檔案。
  • 可以一次上傳多個檔案。
  • 上傳之後可以知道「是誰」上傳。

確認需求之後,就可以使用下面的提示詞產生網頁 ( 注意「同目錄裡的 upload 資料夾」,表示 apps script 程式和 upload 資料夾會放在同樣的資料夾中 )。

更多參考:Vibe Coding 實戰:利用 Google Apps Script 打造免費網頁部署基地

幫我用 apps script 產生的網頁:
- 前後端分離,使用扁平化簡潔風格,藍白配色。
- 使用者可以選擇檔案,或將檔案拖拉到上傳區域,上傳到與 apps script 同目錄裡的 upload 資料夾。
- 使用者上傳檔案時,需要輸入「名字」,上傳檔案後,會在原本檔案名稱前方加上使用者的名字,例如名字是「小明」,檔名是「test.jpg」,上傳之後的檔案名稱就會是「小明-test.jpg」
- 可以一次上傳多個檔案。

完成後應該可以看到「後端程式碼」,待會要複製貼上到 Apps Script 的「程式碼.gs」檔案中。

Step 2、Vibe Coding 相關程式碼 - 完成後應該可以看到「後端程式碼」

還有「前端程式碼」,待會要複製貼到到 Apps Script 的「Index.html」檔案中。

Step 2、Vibe Coding 相關程式碼 - 還有「前端程式碼」

Step 3、Apps Script 部署網頁應用程式

進入剛剛「XX 課程」的資料夾,在資料夾裡新增並開啟一個「Apps Script」。

Step 3、Apps Script 部署網頁應用程式 - 進入剛剛「XX 課程」的資料夾,在資料夾裡新增並開啟一個「Apps Script」

複製剛剛產生的「後端程式碼」,貼到 Apps Script 的程式碼.gs檔案中。

Step 3、Apps Script 部署網頁應用程式 - 複製剛剛產生的「後端程式碼」,貼到 Apps Script 的「程式碼.gs」檔案中。

點擊左側「+」按鈕,新增「HTML 檔案」,檔名設定為「Index」( 不用加上 .html,但需注意大小寫,要與剛剛 AI 產生前端程式碼的檔名相同 )。

Step 3、Apps Script 部署網頁應用程式 - 點擊左側「+」按鈕,新增「HTML 檔案」,檔名設定為「Index」

複製剛剛產生的「前端程式碼」,貼到 Apps Script 的Index.html檔案中。

Step 3、Apps Script 部署網頁應用程式 - 複製剛剛產生的「前端程式碼」,貼到 Apps Script 的「Index.html」檔案中

儲存檔案之後,按下右上角的「部署」,選擇「新增部署作業」。

Step 3、Apps Script 部署網頁應用程式 - 儲存檔案之後,按下右上角的「部署」,選擇「新增部署作業」

點擊小齒輪圖示,選擇部署為「網頁應用程式」,並將「誰可以存取」設定為「所有人」。

Step 3、Apps Script 部署網頁應用程式 - 點擊小齒輪圖示,選擇部署為「網頁應用程式」,並將「誰可以存取」設定為「所有人」

因為這個網頁應用程式會存取 Google 試算表,所以需要進行一些「授權」動作,按照下圖不斷點擊授權按鈕即可 ( 最後出現授權同意畫面後,按下「Continue」按鈕 )。

Step 3、Apps Script 部署網頁應用程式 - 按照下圖不斷點擊授權按鈕即可 ( 最後出現授權同意畫面後,按下「Continue」按鈕 )

最後就會看到一串網頁應用程式的「網址」,點擊或分享這個網址,就可以開始上傳檔案囉!

Step 3、Apps Script 部署網頁應用程式 - 最後就會看到一串網頁應用程式的「網址」,點擊或分享這個網址,就可以開始點餐或訂飲料囉!

Step 4、測試功能,並在 Google Drive 查看檔案

點擊並開啟網址,可以看見輸入名字的欄位以及上傳檔案的區域。

Step 4、測試功能,並在 Google Drive 查看檔案 - 點擊並開啟網址,可以看見輸入名字的欄位以及上傳檔案的區域

選擇上傳的檔案,或將要上傳的檔案拖拉到上傳區域,輸入自己的名字之後就可以開始上傳,上傳成功也會有提示。

Step 4、測試功能,並在 Google Drive 查看檔案 - 選擇上傳的檔案,或將要上傳的檔案拖拉到上傳區域,輸入自己的名字之後就可以開始上傳,上傳成功也會有提示

接著進入雲端硬碟的 upload 資料夾,就可以看見上傳的檔案,同時在檔名的前方,也會看見剛剛自己輸入的名字,就可以識別到底是誰上傳了檔案。

Step 4、測試功能,並在 Google Drive 查看檔案 - 接著進入雲端硬碟的 upload 資料夾,就可以看見上傳的檔案,同時在檔名的前方,也會看見剛剛自己輸入的名字,就可以識別到底是誰上傳了檔案

如何刪除部署的專案

因為部署的 Apps Script 並不會因為檔案被刪除就跟著被刪除,如果要永久移除網頁應用程式,建議可以透過 Google 個人帳號裡的「連結的應用程式」進行移除。

因為部署的 Apps Script 並不會因為檔案被刪除就跟著被刪除,如果要永久移除網頁應用程式,建議可以透過 Google 個人帳號裡的「連結的應用程式」進行移除

進入「連結的應用程式」之後,選擇剛剛部署的專案。

進入「連結的應用程式」之後,選擇剛剛部署的專案

點擊「全部刪除」,就可以刪除這個專案。

點擊「全部刪除」,就可以刪除這個專

相關注意事項

使用 Google Apps Script 雖然可以快速又方便的產生頁面,但需要特別注意「安全性」,因為 Apps Script 產生的網頁應用程式無法進行「保護」,所以「任何人」都可以透過這個網址上傳檔案,甚至如果了解讀寫檔案規則,還可以任意複寫資料夾裡的資料,或是上傳一些奇奇怪怪的東西。因此如果要讓 Apps Script 更具有安全性,建議可以額外增加輸入「帳號密碼」的功能,避免有心人士破壞。

參考:Vibe Coding 實戰:利用 Google Apps Script 打造免費網頁部署基地

此外,因為 Google Drive 並不是標準資料庫,透過 Google Apps Script 讀寫檔案的速度比較慢,如果是正式上線產品,建議仍要使用標準資料庫的做法。

參考:Vibe Coding 將 Google Drive 變身最強檔案後端

小結

隨著 Vibe Coding 的出現,徹底打破了程式開發的專業壁壘。在過去,要做出一個串接資料庫、擁有後台管理、同時具備美觀 RWD ( 響應式 ) 排版的訂餐網頁,至少需要前端與後端工程師協作數天、甚至數週。而今天只要透過 Google Sheets、Apps Script,不需要任何語法基礎,就可以輕鬆打造輕量級產品。

延伸閱讀

Vibe Coding 的重點都不在於「寫程式」,而是為了配合程式的各種「準備工作」,下方列出 Vibe Coding 相關的教學,透過一系列的教學,就更能掌握正確且順暢的開發流程:

意見回饋

如果有任何建議或問題,可傳送「意見表單」給我,謝謝~

生成式 AI 教學

基本介紹

關於生成式 AI 關於 AI 繪圖 AI 繪圖的提示技巧 AI 繪圖軟體比較 ( 2023 ) AI 繪圖軟體推薦 ( 2024 ) 2025 生成式 AI 工具推薦

Vibe Coding 專區

Vibe Coding 教學導讀 認識 Vibe Coding Vibe Coding 新手入門 Vibe Coding 規劃架構流程 Vibe Coding 網頁知識 Vibe Coding Python 知識 Vibe Coding 下載網頁程式碼 Vibe Coding Google App Script 部署網頁 Vibe Coding Github 部署網頁 Vibe Coding 使用外部圖片 Vibe Coding 使用 SVG 圖示 Vibe Coding 使用外部字體 Vibe Coding 固定網頁樣式 Vibe Coding + Spreadsheet 資料庫 Vibe Coding + Firebase 即時資料庫 Vibe Coding + Firestore 資料庫 Vibe Coding 資料庫安全防護 Vibe Coding 串接帳號驗證機制 Vibe Coding 串接 Google 雲端硬碟 Vibe Coding 串接 Gemini API Vibe Coding 打造 LINE Bot Vibe Coding 實戰:線上訂餐系統 Vibe Coding 實戰:檔案上傳系統 Vibe Coding 實戰:英文單字卡

AI 實用技巧

AI 語音轉 srt 字幕

2025 AI 影音工具

ChatGPT - 圖片提示詞技巧 ChatGPT - 客製化機器人 ChatGPT - 使用畫布功能 Gemini - 開始使用 Gemini - 客製化機器人 Gemini - 串接 Google 服務 Gemini - 使用畫布功能 NotebookLM - 開始使用 NotebookLM - 建構知識庫 Google AI Studio - 介面功能 Nano Banana - 影像生成與編輯 Gemini Educator 線上認證 圖片 - AI 圖片快速去背 圖片 - AI 黑白照片上色 聲音 - AI 影片語音轉字幕 影片 - Pika 生成創意影片 影片 - KlingAI 生成影片 影片 - AI 影片趣味特效 影片 - AI 擁抱 ( AI Hug ) 影片 - AI 老照片動起來 圖片 - Dreamina 生成圖片 音樂 - SUNO 創作音樂 音樂 - 免費 AI 音樂素材

ChatGPT

ChatGPT 教學導讀 認識 ChatGPT 開始使用 ChatGPT 優良的提示技巧 基本提示 實用組合提示 角色扮演&對話主題 閱讀並模仿風格 對話中顯示圖片 創作長篇故事與小說 使用 Bing Chat 相關工具或服務

Poe ( Poe AI )

開始使用 Poe 聊天機器人 生成圖片機器人 建立自己的機器人 Youtube 影片重點整理 PDF 重點整理 GPT-4o-mini 分析圖片 讀取網頁進行重點整理 讓 AI 美化提示詞

Ideogram

開始使用 Ideogram 文字產生圖片 圖片 Retry 與 Remix

dzine

開始使用 dzine 提示詞產生圖片 圖片產生圖片 運用圖層功能 運用文字和畫筆 ( 範例 ) 室內設計透視圖實體化 ( 範例 ) 名畫轉真人照片 ( 範例 ) 真人照片轉卡通 ( 範例 ) 真人卡通貼圖

Image Creator

開始使用 Image Creator 提示原則與技巧 搭配 Bing Copilot 產生圖片 ( 範例 ) 產生分享文章縮圖 ( 範例 ) 漫畫書風格

Leonardo.Ai

Leonardo.Ai 教學導讀 Leonardo.Ai vs Midjourney 認識 Leonardo.Ai 註冊與登入 Leonardo.Ai 使用圖片產生器 文字提示語法和準則 Elements 風格元素 使用圖片產生圖片 AI 圖片編輯器 ( Canvas Editor ) 即時 AI 畫布 ( Realtime Canvas ) 即時圖片產生器 ( Realtime Gen ) 圖片升級器 ( Universal Upscaler ) 產生圖片的後續步驟 Prompt Magic 魔法提示 PhotoReal&Alchemy 特色模型 訓練自己的模型 ( 範例 ) 填補缺少的披薩 ( 範例 ) 組合兩片披薩 ( 範例 ) 虛擬陳雷 ( 範例 ) 修改人物年齡 ( 範例 ) 換臉特效 ( 範例 ) 隱藏的人臉或文字 ( 範例 ) 全部填滿皮卡丘 ( 範例 ) 名畫轉真人照片

Recraft

開始使用 Recraft 點陣圖 Raster image 向量圖 Vector image 圖示 Icon 與 Logo 系列影像 Image Set 原型示意圖 Mockup 畫框 Frame、文字 Text 放大 Upscale、改色 Recolor 圖片去背、替換圖片背景 添加、修改、移除景物 圖片產生圖片 點陣圖轉向量圖 自定義圖片風格 合併不同圖片 ( 範例 ) 名畫轉真人照片 ( 範例 ) 照片轉卡通插畫 ( 範例 ) 自製表情貼圖 ( 範例 ) 多格漫畫風格 ( 範例 ) 圖片中加入文字 ( 範例 ) 延伸圖片範圍

Midjourney

Midjourney 教學導讀 認識 Midjourney 使用 Midjourney 使用 niji.journey 設定指令 功能參數 使用文字提示產生圖片 使用圖片產生圖片 優良的提示技巧 多重提示的權重與順序 style tuner 樣式調校 remix 放大、修改與重繪 blend 混合多張圖片 刪除圖片&傳送資訊 ( 範例 ) 修改人物年齡 ( 範例 ) 阿爾欽博托風格 ( 範例 ) 照片轉卡通人物 ( 範例 ) 變胖、變瘦

Vidnoz AI

開始使用 Vidnoz AI ( 影片 ) 照片講話 ( 圖片 ) 人物換臉 ( 圖片 ) 圖片去背

Canva AI 魔法功能

魔法媒體工具 ( 新視窗 ) 魔法工作室 ( 新視窗 ) 魔法變形工具 ( 新視窗 ) 魔法文案工具 ( 新視窗 )

Clipdrop

開始使用 Clipdrop 修改圖片選取區域 延展圖片並生成內容 人物換臉 圖片去背 移除特定物件 放大與增強影像 影像打光 替換天空

Playground AI

開始使用 Playground AI Board 文字產生圖片 Canvas 繪製與修改圖片 Remix 與 Edit 圖片 延展和放大增強圖片 圖片去背、移除物件 搭配 Poe AI 產生圖片

Replicate 模型

認識 Replicate ( 修圖 ) 黑白照片上色 ( 修圖 ) 修復老照片 ( 修圖 ) 增強與放大照片 ( 修圖 ) 更換髮型和表情 ( 繪圖 ) 似顏繪貼圖 ( 繪圖 ) 真人照片轉公仔 ( 繪圖 ) 隱藏的圖案或文字 ( 提示 ) 圖片轉提示詞 ( 提示 ) 改善提示詞

AI 繪圖效果&範例

著色本效果 2D 卡通人物 物品開箱照 像素藝術 百科全書風格 卡通貼紙

AI 繪圖風格大全

風格大全 ( 總覽 ) 風格大全 ( 攝影、照片 ) 風格大全 ( 畫面角度效果 ) 風格大全 ( 媒材、材質 ) 風格大全 ( 卡通、漫畫 ) 風格大全 ( 藝術流派風格 ) 風格大全 ( 藝術家、畫家 ) 風格大全 ( 插畫風格 1 ) 風格大全 ( 插畫風格 2 ) 風格大全 ( 特色風格 )