雖然它們分屬不同領域,但少了誰,戲都演不下去。以下是前後端關係的「對話」的核心邏輯:
前後端角色對照


前端與後端並不是直接「黏」在一起的,它們透過一個名為 API (應用程式介面) 的窗口來溝通。
- 請求 (Request):當你在網頁點擊「加入購物車」時,前端會發出一封電子信件(HTTP 請求)給後端,內容通常是:「嘿,這名用戶想買編號 123 的商品。」
- 回應 (Response):後端收到信後,檢查庫存,然後回信(HTTP 回應)給前端:「沒問題,庫存還夠,這是更新後的購物車清單。」
2. 資料的語言:JSON
為了讓不同語言(例如前端的 JavaScript 和後端的 Php)能聽懂彼此,它們通常使用 JSON 格式來傳輸資料。這是一種輕量級、像清單一樣的文字格式,不論什麼語言都能輕鬆解析。
3. 資料庫 (Database) 的角色
前端通常不被允許直接碰資料庫(為了安全),所以後端扮演了「守門員」的角色。所有的會員資料、文章內容、訂單記錄都存在資料庫中,只有後端程式可以進行增刪查改(CRUD)。

這張圖將一個複雜的技術概念,轉化為一個易於理解的故事:
- 使用者交互 (User Interaction):位於左側的「前端 (Client Studio)」中,可愛的小女孩與使用者介面互動(例如:提交表單、點擊按鈕)。這觸發了後續流程。
- 發送請求 (Send Request):一個印有 HTTP 標誌的紙飛機(Request)飛越「API 橋樑 (API Bridge)」,這是資料交換的通道。
- 後端處理 (Backend Processing):紙飛機抵達右側的「後端 (Server Forest)」,一個精神小精靈工程師( spirit engineer)在多層樹洞中進行業務邏輯處理(例如:驗證資料、執行運算)。
- 訪問數據庫 (Database Access):精靈工程師會去讀取或寫入位於樹根的「數據庫 (Database)」中的發光書架和水晶數據(即 image_0.png 中的 Database)。
- 返回響應 (Return Response):處理完成後,一個發光的 JSON 禮物盒(Response),裡面裝著特定的 JSON 數據(例如圖中所示的 '{"id": "123", "name": "Kiki", "order_status": "Shipped"}'),從後端出發。
- 前端更新 (Frontend Update): JSON 禮物盒沿著一條獨立的「回饋通道 (Feedback Channel)」傳回前端,小女孩的電腦螢幕上顯示更新後的資訊(例如:登入成功、新購物車內容),完成整個週期。