gin-auth

command module
v0.0.0-...-dbebdbe Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 17, 2021 License: MIT Imports: 8 Imported by: 0

README

gin-auth

CI

getting start

cp .env.sample .env
docker-compose up -d
# user create
curl -X 'POST' 'http://localhost:3000/users' -H 'accept: */*' -H 'Content-Type: application/json' -d '{"user_id": "string","password": "string"}'
# user login
curl -v -X 'POST' 'http://localhost:3000/login' -H 'accept: */*' -H 'Content-Type: application/json' -d '{"user_id": "string", "password": "string" }'
# Set-Cookieの内容をコピー
MYSESSION="コピペした内容"
# MYSESSION=MTYzNDQ1NzQzOHxEdi1CQkFFQ180SUFBUkFCRUFBQUp2LUNBQUVHYzNSeWFXNW5EQWdBQm5WelpYSnBaQVp6ZEhKcGJtY01DQUFHYzNSeWFXNW58rm4-L73uxKp-8TQsHfvIWz-7ybCprjQOifKwJcn2jYY=
curl -X 'GET' 'http://localhost:3000/users' -H 'accept: */*' -H 'Cookie: MYSESSION=${MYSESSION}'

architecture

❯ tree -d
.
├── constants       : いろんな場所で共通した定数
├── db              : Databaseとのコネクション
├── docs            : swagger用のyaml置き場
├── handler         : ginに渡すハンドラー実装してる場所(controllerといった方が良いかも)
├── middleware      : 認証確認するためのmiddleware
├── model           : DBに保存しておきたいModel(今回の例ならUser)を定義
├── mysql           : mysqlの設定、初期起動時のscript
│   └── init
└── repository      : DatabaseからModelを取り出す部分を実装している場所

10 directories

handlerは、repositoryに依存 repositoryは、Databaseに依存

TODO

  • repositoryをMockにしたら、DBに依存することなくhandlerをテスト
  • DBのパスワードとかを、環境変数にする
参考にしたBlog

https://zenn.dev/someone7140/articles/02181927acd040

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL