codestates / ETON-server

0 stars 0 forks source link

[Bug] github 소셜 로그인 error 코드 #47

Open aesopfrom0 opened 3 years ago

aesopfrom0 commented 3 years ago

Task Card

Assignee: @aesopfrom0

Job Description

github 소셜로그인 때 응답에 access token이 전달되지만 아래와 같은 에러코드가 뜹니다. 서버 사이드에서는 401, 브라우저에서는 500(intenal server error)가 발생하는 문제입니다. 아래의 콘솔 출력을 보시면 access token을 전달하고 나서 또 요청을 하고 있습니다. 이게 비동기적인 특징과 관련된 것인지 잘 모르겠습니다.

스크린샷 2021-02-09 23 14 36

예상되는 원인과 해결책

  1. 기존 await 작성 코드 -> .then으로 이어서 작성
  2. callback 함수를 부르는 라우터에서 POST method -> GET 변경.
  3. 깃헙으로부터 받은 authorizationCode를 여러 번 호출하는 것이 문제 -> 예상 해결책도 찾지 못함

1, 2번은 시도하였으나 해결되진 않았습니다. 1의 경우, then으로 작성하여도 같은 순서로 콘솔 로그가 출력되며 마지막엔 401로 끝납니다. 아래의 공식 문서를 볼 때 3의 원인이 가장 타당해 보이는데 콘솔창에서 같은 코드로 여러번 post 요청을 보내는 게 확인됩니다. 따라서 당연히 두번째 요청부터는 깃헙으로부터 401(Unauthorized) 응답을 받습니다. 오늘이 얼마 남지 않았지만 남은 시간 동안 생각해보고 안되면 미제로 남겨두겠습니다.

공식 문서 참고 https://docs.github.com/en/developers/apps/troubleshooting-oauth-app-access-token-request-errors#bad-verification-code

aesopfrom0 commented 3 years ago

Postman으로는 access token 전달에서 끝납니다.

스크린샷 2021-02-09 23 33 48 스크린샷 2021-02-09 23 33 55