본문 바로가기

코드스테이츠(Immersive)/4주프로젝트

4주프로젝트 (Hollyship_day09 : spotify API 가져오기)

스포티 파이 API의 종류

WEB API : 

WEB PLAYBACK SDK
IOS

ANDROID

WIDGETS

 

우선 authorization flow를 먼저 진행해서 access token을 얻어야 한다

CODE - TOKEN간 교환은 비밀 키가 필요하며 보안 목적을 위해 서버대 서버의 커뮤니케이션만 가능하다.

 

authorization 종류

- App authorization : 앱이 spotify platform 에 접근할수 있도록 하는 인증(APIs, SDKs and Widgets) 

- User authorization : 스포티파이 뿐만 아니라 사용자의 데이터에 접근하고 수정할수 있는 권한을 주는 인증,
                            /authorize endpoint 사용, scope 범위 지정

 

Obtaining Authorization 

1. 어플리케이션 등록

 

2. 3 Spotify authorization flows중 하나를 선택

- Refreshable user authorization : Authorization Code (User auth, Secret key , Token refresh)

 : 사용자가 한번만 권한을 부여하는 장기적으로 실행되는 앱에 적합, 토큰 교환으로 액세스 토큰의 유효성 연장가능, 토큰 교환에는 시크릿 키가 필요함으로 백엔드사이드에 적합하다

 

- Temporary user authorization : Implicit Grant (User auth, No Secret key)

  : 클라이언트 사이드, javascript를 사용하여 리소스의 소유자의 브라우저에서 실행된다. 서버사이드 코드는 필요없다

   액세스토큰의 유효기간이 짧고 연장할 수 없다.

 

- Refreshable app authorization : Client Credentials Flow (App auth , Secret key)

   : 서버 대 서버 인증에 사용된다. 사용자 정보에 액세스 하지 않는 엔드포인트만 액세스 할 수 있다.

    유효기간이 긴 액세스 토큰, 인증없이 higher rate limit을 갖는다 

 

 

API문서를 너무 가볍게 보고 지나가서 auth 과정 선택과 진행하는데 있어서 잘못된 결정을 했다
공식문서 확인할때는 시간이 걸리더라도 꼼꼼히 보자!