/
main.go
46 lines (36 loc) · 1.05 KB
/
main.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
package main
import (
"github.com/gotomicro/ego"
"github.com/gotomicro/ego/core/econf"
"github.com/gotomicro/ego/core/elog"
"github.com/gotomicro/ego/server/egin"
"github.com/gotomicro/cetus/kauth"
"github.com/gotomicro/cetus/kauth/example/login"
)
func main() {
err := ego.New().
Invoker(
AuthInit,
).
Serve(
GetRouter(),
).Run()
if err != nil {
elog.Panic("start up error: " + err.Error())
}
}
func AuthInit() error {
oauthInfos := make([]kauth.OAuthInfo, 0)
_ = econf.UnmarshalKey("auth.tps", &oauthInfos)
elog.Info("AuthInit", elog.Any("step", "UnmarshalKey"), elog.Any("oauthInfos", oauthInfos))
appURL, appSubURL, _ := kauth.ParseAppAndSubURL(econf.GetString("app.rootURL"))
baseURL := econf.GetString("app.baseURL")
elog.Info("AuthInit", elog.Any("step", "ParseAppAndSubURL"), elog.Any("appURL", appURL), elog.Any("appSubURL", appSubURL))
kauth.NewOAuthService(appURL, baseURL, oauthInfos)
return nil
}
func GetRouter() *egin.Component {
r := egin.Load("server.http").Build()
r.GET("/login/:oauth", login.Oauth)
return r
}