go語言的web開發-相關整理
Go(Golang)是一種高效且易於佈署的語言,特別適合用來開發 Web 應用程式,因為它內建了 net/http 標準庫,不需要額外的 Web 伺服器(例如 Nginx、Apache)即可直接處理 HTTP 請求。
本指南會介紹 如何使用 Go 進行 Web 開發,涵蓋基礎與進階內容,包括:
- 基礎 HTTP 伺服器
- 使用路由框架(如 Gin)
- 連接資料庫
- 前後端 API 整合
- Go + Docker 部署
1. 建立最簡單的 Web 伺服器
Go 內建的 net/http 就能處理 HTTP 請求,這是最基本的 Web 伺服器:
如何運行?
然後開啟 **http://localhost:8080**,就能看到 Hello, Go Web! 🎉
🔹 優點:無需額外框架,標準庫內建功能
🔹 缺點:手動管理路由,對大型專案不夠靈活
2. 使用 Gin 框架(推薦)
net/http 很簡單但缺乏彈性,因此推薦使用 Gin,它是一個輕量且高效的 Web 框架。
🔹 安裝 Gin
🔹 建立 API 伺服器
開啟瀏覽器:http://localhost:8080/hello
你會看到:
3. 連接 MySQL / PostgreSQL
如果你要開發一個完整的 Web 應用,通常會需要資料庫,這裡示範如何使用 GORM 連接 MySQL。
🔹 安裝 GORM 與 MySQL 驅動
🔹 連接 MySQL
🔹 優點:
GORM提供 ORM 功能,簡化資料庫操作
AutoMigrate可自動創建表格支援多種資料庫(MySQL、PostgreSQL、SQLite)
4. RESTful API(CRUD 操作)
建立一個完整的 REST API,包含:
GET /users- 獲取所有使用者POST /users- 新增使用者GET /users/:id- 獲取特定使用者PUT /users/:id- 更新使用者DELETE /users/:id- 刪除使用者
測試 API(使用 cURL 或 Postman):
5. 使用 Docker 部署 Go Web 應用
建立
Dockerfile:
建置與執行:
總結
| 技術 | 說明 |
|---|---|
net/http | Go 內建 HTTP 伺服器 |
Gin | 高效能 Web 框架(推薦) |
GORM | ORM 資料庫操作(支援 MySQL, PostgreSQL) |
Docker | 容器化部署 |
這樣,你就可以用 Go 開發 Web 應用程式,包含 API、資料庫、部署
留言
張貼留言