作者序
Go 語言是非常簡潔的語言。具有三大優點:第一,效能好;第二,語法簡單;第三,開發效率高。無論是開發、測試、部署、專案規模的擴充,或是團隊協作,Go 語言考慮都非常周到;而且語法恰當好處,不多不少,夠用就是它的設計原則,非常適合專案的開發。
本書詳盡介紹如何用Go語言進行Web應用的開發,將Go語言的特性與Web開發應用結合,幫讀者成功地構建跨平台的應用程式,節省Go語言開發Web的寶貴時間。
全書以一個Web 服務相關的問題域展開:表單處理、資料庫、階段(Session)、安全、國際化和本地語系化、記錄檔、部署與維護。最後,結合作者的實作,列出了一個參考的Web 程式設計框架,以簡化Web 程式設計,提升開發效率。
Go 語言是非常簡潔的語言。具有三大優點:第一,效能好;第二,語法簡單;第三,開發效率高。無論是開發、測試、部署、專案規模的擴充,或是團隊協作,Go 語言考慮都非常周到;而且語法恰當好處,不多不少,夠用就是它的設計原則,非常適合專案的開發。
本書詳盡介紹如何用Go語言進行Web應用的開發,將Go語言的特性與Web開發應用結合,幫讀者成功地構建跨平台的應用程式,節省Go語言開發Web的寶貴時間。
全書以一個Web 服務相關的問題域展開:表單處理、資料庫、階段(Session)、安全、國際化和本地語系化、記錄檔、部署與維護。最後,...
目錄
推薦序1
推薦序2
前言
第1章 GO 語言環境設定
1.1 Go 語言安裝
1.2 GOPATH 與工作空間
1.3 Go 語言指令
1.4 Go 語言開發工具
1.5 總結
第2章 Go 語言基礎
2.1 你好,Go
2.2 Go 語言基礎
2.3 流程和函數
2.4 struct 類型
2.5 物件導向
2.6 interface
2.7 平行處理
2.8 總結
第3章 Web 基礎
3.1 Web 工作方式
3.2 GO 語言架設一個Web 伺服器
3.3 Go 語言如何使Web 工作
3.4 Go 語言的http 封包詳解
3.5 總結
第4章 表單
4.1 處理表單的輸入
4.2 驗證表單的輸入
4.3 預防跨站指令稿
4.4 防止多次送出表單
4.5 處理檔案上傳
4.6 總結
第5章 存取資料庫
5.1 database/sql 介面
5.2 使用MySQL 資料庫
5.3 使用SQLite 資料庫
5.4 使用PostgreSQL 資料庫
5.5 使用beedb 函數庫進行ORM 開發
5.6 NOSQL 資料庫操作
5.7 總結
第6章 Session 和資料儲存
6.1 Session 和Cookie
6.2 Go 語言如何使用Session
6.3 Session 儲存
6.4 預防Session 綁架
6.5 總結
第7章 文本處理
7.1 XML 處理
7.2 JSON 處理
7.3 正規表示法處理
7.4 模版處理
7.5 檔案操作
7.6 字串處理
7.7 總結
第8章 Web 服務
8.1 Socket 程式設計
8.2 WebSocket
8.3 REST
8.4 RPC
8.5 總結
第9章 安全與加密
9.1 預防CSRF 攻擊
9.2 確保輸入過濾
9.3 避免XSS 攻擊
9.4 避免SQL 植入
9.5 儲存密碼
9.6 加密和解密資料
9.7 總結
第10章 國際化和本地語系化
10.1 設定預設地區
10.2 本地語系化資源
10.3 國際化網站
10.4 總結
第11章 錯誤處理、偵錯和測試
11.1 錯誤處理
11.2 使用GDB 偵錯
11.3 Go 語言怎麼寫測試使用案例
11.4 總結
第12章 部署與維護
12.1 應用記錄檔
12.2 網站錯誤處理
12.3 應用部署
12.4 備份和恢復
12.5 總結
第13章 如何設計一個Web 框架
13.1 專案規劃
13.2 自訂路由器設計
13.4 記錄檔和設定設計
13.5 實現部落格的增刪改
13.6 總結
第14章 擴充Web 框架
14.1 靜態檔案支援
14.2 Session 支援
14.3 表單及驗證支援
14.4 使用者認證
14.5 多語言支援
14.6 pprof 支援
14.7 總結
推薦序1
推薦序2
前言
第1章 GO 語言環境設定
1.1 Go 語言安裝
1.2 GOPATH 與工作空間
1.3 Go 語言指令
1.4 Go 語言開發工具
1.5 總結
第2章 Go 語言基礎
2.1 你好,Go
2.2 Go 語言基礎
2.3 流程和函數
2.4 struct 類型
2.5 物件導向
2.6 interface
2.7 平行處理
2.8 總結
第3章 Web 基礎
3.1 Web 工作方式
3.2 GO 語言架設一個Web 伺服器
3.3 Go 語言如何使Web 工作
3.4 Go 語言的http 封包詳解
3.5 總結
第4章 表單
4.1 處理表單的輸入
4.2 驗證表單的輸入
4.3 預防跨站...