일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 크롤링
- 워드프레스 rss
- 인스타그램
- 설정 파일
- wordpress feed
- htaccess
- graph api
- 맵핑
- Apache
- 아파치 프록시
- wordpress function
- memcached
- elasticsrach template
- mapping
- template
- config
- 워드프레스 피드
- Elasticsearch
- Wordpress
- 프록시
- 워드프레스
- 아파치
- wordpress rss
- Kibana
- 엘라스틱서치
- htpasswd
- memcache
- Today
- Total
EunsooD
구글 OAuth2 통해서 로그인 - Youtube 채널 ID 가져오기까지 본문
디테일한 순서는 아래에 기록하겠지만
큰 순서는 다음과 같다.
구글 인증 설정 -> 구글 로그인 -> 승인 코드 발급 -> 코드로 액세스 토큰 발급 -> 액세스 토큰으로 Youtube Channel ID 받음 |
1)
우선 Google 클라우드 콘솔에 가서 설정해야한다.
https://console.cloud.google.com/
2)
클라우드 콘솔 페이지 접속해보면
"API 및 서비스" -> "사용자 인증 정보" -> 사용자 인증 정보 만들기 -> OAuth 클라이언트 ID
생성한다.
( 프로젝트가 없으면 프로젝트 부터 생성하고, Youtube API 사용을 활성화 한다. )
3)
웹 애플리케이션 클라이언트 ID가 생성된다.
4)
아래와 같은 주소로 요청 페이지를 만든다.
(풀어서 기록함)
https://accounts.google.com/o/oauth2/v2/auth?
redirect_uri={승인된 리디렉션 URI} &
response_type=code&
client_id={클라이언트ID}&
scope=https://www.googleapis.com/auth/youtube.readonly &
access_type=offline
5)
해당 페이지로 구글승인 받아서 로그인을 하게되면 주소가 다음과 같이 생성되면서 넘어간다.
{승인된 리디렉션 URI}/?code={리턴 받은 Code}&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fyoutube.readonly#
6)
{승인된 리디렉션 URI} 에서 {리턴 받은 Code}를 변수로 받는다.
7)
{리턴 받은 Code} 코드로 access_token을 구한다.
{승인된 리디렉션 URI} 페이지에서 POST로 전송하여 구해야 한다.
( 페이지를 새로고침 하거나 로그인 페이지에서 넘어온 값이 아니면 결과를 얻을 수 없다. )
https://accounts.google.com/o/oauth2/token?
code={리턴 받은 Code}&
client_id={클라이언트ID} &
client_secret={클라이언트 보안 비밀}&
redirect_uri={승인된 리디렉션 URI}&
grant_type=authorization_code
8)
위와 같이 요청하면 Json으로 access_token이 리턴된다.
그 access_token으로 채널 ID를 구한다.
https://www.googleapis.com/youtube/v3/channels?part=id&mine=true&access_token={Access_token}
9)
끝
'STUDY' 카테고리의 다른 글
Mysql 특정 문자열 기준을 데이터 나누기 (0) | 2020.06.29 |
---|---|
정규식 괄호 안에 내용 삭제하기 (0) | 2020.04.28 |
정규식 / regex 테스트 페이지! (0) | 2016.02.04 |
mysql update 명령어 (0) | 2015.02.27 |
xml 데이터 수정하기. php로 (0) | 2014.10.14 |