Hello, Android!

트위치 API 사용하기 본문

기타

트위치 API 사용하기

lwndnjs93 2021. 1. 20. 16:35

트위치에서 제공하는 다양한 API를 살펴보던중

제공되는 API를 활용한 서비스를 만들어보고싶어서

트위치 API사용법을 한참 헤매다가 방법을 정리한다

 

dev.twitch.tv/docs/api/

 

Twitch API

Get Started with the Twitch API

dev.twitch.tv

트위치 개발자 페이지에서 설명이 나와있다

우선 트위치 개발자 콘솔에 로그인을 하고 앱을 등록해야한다

 

콘솔 페이지에 확장 프로그램, 응용 프로그램이 있는데 

확장 프로그램은 방송에서 활용되는 프로그램 twip같은것을 만들때 활용되며

그 외에 이번에 필요한 단순 API를 활용하는 경우에는 응용프로그램에 앱을 등록해야한다

 

앱 정보를 등록하고 관리 페이지에 들어가면

설정한 앱의 정보들과 클라이언트ID, 클라이언트 시크릿을 볼수있다

 

지금 당장 필요할 것으로 예상되는 API들과 트위치 API의 샘플로 나와있는 API에서도

클라이언트ID와 앱 액세스 토큰을 필요로 한다

 

dev.twitch.tv/docs/authentication/getting-tokens-oauth/#oauth-client-credentials-flow

 

Getting Tokens: OAuth

Getting Tokens: OAuth

dev.twitch.tv

세개의 파라메터를 받으며 client_id는 콘솔의 앱 관리 페이지에 나와있는 클라이언트ID

client_secret은 앱 관리 페이지 하단에 신규 시크릿을 누르면 생성이된다

클라이언트 시크릿은 한번 생성하면 어딘가 기록해야하며, 노출되어서는 안된다

 

포스트맨으로 테스트한 결과 정상적인 응답이 돌아왔다

여기서 우리에게 필요한 것은 access_token의 값이다

앱 액세스 토큰은 약 60일 후에 만료되므로 유효성 검사 엔드 포인트에 요청을 제출하여

토큰이 유효한지 확인해야한다

또한 서버 간API 요청에만 사용되며 클라이언트 코드에 포함되어서는 안된다

 

다시 트위치API 첫페이지의 step2 샘플코드의 API를 테스트해보자

https://api.twitch.tv/helix/search/channels?query=스트리머 아이디

파라메터의 qurey에 스트리머의 아이디를 넣으면 해당 스트리머가 방송중인지 알수있는 API이다

헤더에는 client-id Authorization가 필요하며 client-id는 콘솔 페이지에 있는 클라이언트 아이디

Authorization는 위에서 발급받은 토큰이다

 

이번에는 지금 방송중인 소행성612님의 아이디를 넣고 테스트했다

정상적으로 응답이 돌아왔고

방송중이기때문에 is_live 항목에 true값이 들어있다

 

위와같은 방법으로 클라이언트ID, 토큰을 만들게 되면

예제 이외의 다른 API들도 문제없이 호출이 가능하다

'기타' 카테고리의 다른 글

REST  (0) 2021.02.04