Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

setToken() 에러 응답 로직 개선 #3

Closed
dc7303 opened this issue Jul 9, 2020 · 0 comments
Closed

setToken() 에러 응답 로직 개선 #3

dc7303 opened this issue Jul 9, 2020 · 0 comments

Comments

@dc7303
Copy link
Contributor

dc7303 commented Jul 9, 2020

easycodefgo/connector.go

Lines 42 to 65 in 16a77ce

func setToken(clientID, clientSecret string, accessToken *string) error {
repeatCount := 3
i := 0
if *accessToken == "" {
for i < repeatCount {
tokenMap, err := requestToken(clientID, clientSecret)
if err != nil {
return err
}
if token, ok := tokenMap["access_token"]; ok {
*accessToken = token.(string)
}
if *accessToken != "" {
break
}
time.Sleep(time.Millisecond * 20)
i++
}
}
return nil
}

requestToken() 결과가 200 OK 가 아니면 무조건 최대 3회까지 재 요청을 해야함.

3회 이후 토큰을 가져오지 못한 상태로 API 요청 후 서버에서 내려주는 에러 응답 결과를 사용자에게 보여주기 위함.

dc7303 added a commit that referenced this issue Jul 9, 2020
 현재 requestToken() 에러 발생시 사용자에게 에러 정보를 반환하고 있다.
 서버에서 정제된 에러 응답 데이터(CF-00401)로 반환되어야 하기 때문에
 토큰 요청 에러가 발생해도 API 요청까지 도달하도록 개선.
 추가로 불필요한 sleep 로직 제거.
@dc7303 dc7303 closed this as completed Jul 9, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant