目前結構
gin-blog/
├── conf
│ └── app.ini (應用程序的獨立值)
├── main.go
├── middleware
│ └── jwt
│ └── jwt.go (建立一個handleFunc 在API進入分流之前 驗證token)
├── models (這裡的models 處理與Database之間的交互)
│ └── models.go (關於Model通用性方法)
| └── tag.go (Tag與database相關方法)
| └── article.go (Article與database相關方法)
| └── auth.go (Auth與database相關方法)
├── pkg
│ ├── app
│ ├── request.go (Validation.Errors的統一處理)
│ ├── response.go (JSON方法)
│ ├── e
│ ├── code.go
│ └── msg.go
│ ├── setting
│ └── setting.go (程序設定檔)
│ ├── util
│ └── jwt.go (生成及驗證Token)
│ ├── upload
│ └── image.go (照片檔案相關方法)
│ ├── logging
│ └── file.go (檔案相關方法)
│ └── log.go (記錄在logfile相關方法)
├── service
│ ├── article_service
│ ├── article.go (Article的獲Get/Add/Updata方法)
│ ├── tag_service
│ ├── tag.go
│ ├── cache_service
│ ├── article.go (產生獨特Key的方法)
│── util
│ └── pagination.go
├── routers生成及驗證Token
│ ├── api
│ ├── upload (處理router分下來的分流處理)
│ │ └── tag.go
│ │ └── article.go
│ │ └── auth.go (處理GetAuth分流方法)
│ │ └── auth.go (UploadImage方法)
│ └── router.go (分流方法)
├── runtime
│ ├── logs
│ ├── log.log (工作日誌儲存位置)
│ ├── upload
│ ├── images (上傳照片後的儲存位置)
依賴包
go get -u github.com/dgrijalva/jwt-go
go get -u github.com/fvbock/endless