Step 1: Google API키 발급 받기(구글 서비스에서 OAuth API키 발급 받기) - Google 로그인, 프로젝트 생성, OAuth client ID 발급받기, 사용할 서비스 설정하기 (API 설정)

CODEDRAGON Development/JSP

반응형


 

 

구글 서비스에서 OAuth API키 발급 받기

·         Google 로그인

·         프로젝트 생성

·         OAuth client ID 발급받기

·         사용할 서비스 설정하기 (API 설정)

 

 

Google 로그인

https://console.developers.google.com

 

 

프로젝트 생성

좌측 상단의 드롭다운 메뉴를 클릭하여 +버튼을 클릭하면 새로운 프로젝트를 생성할 수 있습니다.


 

oauthtest

[Create]


 

우측 상단의 알림 아이콘을 통해 생성된 것을 확인할 수 있습니다.

알림 아이콘 클릭 후 Create Project:oauthtest 항목을 클릭하면 만들어진 프로젝트 정보 페이지로 이동합니다.


 


 

 

OAuth client ID 발급받기

샌드위치 버튼 >> [API Manager] >> [Credentials]


 

[Create credentials]


 

[OAuth client ID]


 

 

[Configure consent screen]


 

Product name shown to users항목 입력 >> [Save]

OAuthTest


 

서비스할 유형을 선택한 후 >> [Create]

[Web application]


 

[OK]


 

생성 완료!!!

해당 프로젝트(Client) Resource Server에 등록하였습니다.


 

 

다운로드 아이콘을 클릭하여 해당 정보를 개발중인 프로젝트 폴더에 저장합니다.


 

json 파일로 저장됩니다.


 

 

 

사용할 서비스 설정하기 (API 설정)

왼쪽 메뉴에서 [Library] 클릭


 

 

사용할 서비스 API 에서 사용설정을 합니다.


 

calendar API를 사용하는 경우 "Google Calendars API" 항목을 찾아 클릭합니다.


 

상단의 [ENABLE] 버튼 클릭하면 해당 프로젝트는 Google Calendars API를 사용하도록 설정됩니다.


 

생성 완료!!!


 

오른쪽 상단의 [Try this API in APIs Explorer] 클릭하면 사용할 수 있는 API 명령어 정보를 웹상에서 확인할 수 있습니다.


 


 

 

켈린더 목록을 가져오기 위해서 "calendar.calendarList.list" 항목을 클릭합니다.


 

데이터를 가져오기 위한 옵션을 설정하는 항목이 표시됩니다.

켈린더 목록을 가져오기 위해서는 특별한 설정이 필요 없어서 하단의 [Authorize and execute] 버튼을 클릭합니다.


 

 

API를 통해 특정 데이터를 가져오는 행위인 Scope을 설정합니다.

여기서는 전체데이터에서 켈린더 리스트를 가져오는 것이 됩니다.

지금 받는 허락이  켈린더 리스트를 가져오기 위한 작업임을 Resource Owner Resource Server에게 알려주기 위해서 Scope를 설정합니다.

표시된 창은 켈린더 리스트를 가져오기위해서 아래의 항목의 Scope를 허용해야 함을 알려주고 있습니다.

[Authorize and execute]


 

[ALLOW]


 

페이지를 밑으로 누르면 결과가 보여집니다.


 

 

 

Oauth를 통한 방식이 아닌 API Key를 이용한 방법으로

Request에 있는 경로로 요청하면 해당 정보를 주게 됩니다.

GET https://www.googleapis.com/calendar/v3/users/me/calendarList?key={YOUR_API_KEY}

 

API키 없이 요청해 보면 로그인하라고 나옵니다. (message: Login Requeired)

https://www.googleapis.com/calendar/v3/users/me/calendarList?key=