-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathresponse.go
34 lines (30 loc) · 900 Bytes
/
response.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
package ssojwt
type DataRender struct {
LoginResponse string
OriginUrl string
}
type LoginResponse struct {
AccessToken string `json:"access_token"`
RefreshToken string `json:"refresh_token"`
Nama string `json:"nama,omitempty"`
Npm string `json:"npm,omitempty"`
Fakultas *Jurusan `json:"fakultas,omitempty"`
}
func MakeLoginResponse(config SSOConfig, model ServiceResponse) (res LoginResponse, err error) {
accessToken, err := CreateAccessToken(config, model)
if err != nil {
return
}
refreshToken, err := CreateRefreshToken(config, model)
if err != nil {
return
}
res = LoginResponse{
AccessToken: accessToken,
RefreshToken: refreshToken,
Nama: model.AuthenticationSuccess.Attributes.Nama,
Npm: model.AuthenticationSuccess.Attributes.Npm,
Fakultas: &model.AuthenticationSuccess.Attributes.Jurusan,
}
return
}