iOS

[iOS] OAuth2.0 access token을 받아보자

사과농사 2021. 5. 10. 17:56

목표

42의 Auth에 접근하여 Auth token을 얻고

얻은 Auth token으로 42 api에 access token을 요청해서 acess token을 받아보자!

그러면 acess token으로 이제 42api에서 자료를 받을 수 있다.!

 

OAuth의 Grant Type 종류

 

- Authorization Code Grant Type

- Implict Grant Type

- Resource Owner Password Credentials Grant Type

- Client Credentials Grant Type

 

 

여기서 저는 예전에 "마주친42"앱에서 Client Credentials Grant Type을 사용했습니다. 

그 당시 42에서 받은 client id, client secret만으로 access token을 받아서 사용했습니다.

 

 

 

하지만 이제는!!! Autorization Code Grant Type 을 써보겠습니다.

 

 

 

 

저는 우선 api관련 변수들을 가진 APIManager라는 클래스를 만들고 싱글톤으로 사용할 것입니다.!! 

그리고 42 auth 페이지에서 auth 코드를  APIManager 싱글톤에 값을 넣고

바로 42api에 access token을 POST로 요청합니다.!!

 

 

 

결과

access token을 정상적으로 잘 받았습니다. 이제 이 토큰으로 42와 통신을 할 수 있습니다.!! 

 

 

참고

 

Spring OAuth2 Provider 정리 - Yun Blog | 기술 블로그

Spring OAuth2 Provider 정리 - Yun Blog | 기술 블로그

cheese10yun.github.io

 

 

Web application flow

Guides for Web application flow

api.intra.42.fr