etc

[230410] [google drive api] java api 사용하기 (1) - api 사용 설정

hjk927 2023. 4. 10. 23:55

 

글을 오랜만에 쓴다. 

 

구글 드라이브 api를 사용할 일이 있었는데 적용법이 쉽지 않아서 좀 고생했다. 

다 끝내고 나니까 꼭 정리해야 겠다는 생각이 들더라. 

몇 년 전에 사용할 때도 느꼈지만 구글 api는 매뉴얼이 좀 부실하다. 

 

 

개발환경 

- java 1.8

- google drive api 

- maven

- eclipse 


 

모든 google api 사용은 google cloud console에 들어가는 것에서 시작한다. oauth만 사용할 경우는 어떤지 잘 모르겠다. 

google cloud console에 들어간 뒤 프로젝트를 생성해야 한다. 

프로젝트를 생성한 뒤에 프로젝트에서 사용할 구글 api(구글 드라이브, 캘린더, 지도 등...)를 설정할 수 있다. 

https://console.cloud.google.com/welcome 

 

Google 클라우드 플랫폼

로그인 Google 클라우드 플랫폼으로 이동

accounts.google.com

 

좌측 메뉴에서 API 및 서비스 > 사용 설정된 API 및 서비스 선택한 후 우측 상단에서 프로젝트 만들기 클릭.

 

임의의 이름 설정한 뒤 만들기 선택

 

 

 

프로젝트 대시보드를 확인할 수 있다. 

+API 및 서비스 사용 설정 클릭(혹은 좌측메뉴 라이브러리 클릭) 사용할 API를 설정하자. 

 

필요한 라이브러리를 쉽게 다운받을 수 있다. 

나는 google drive로 검색해서 맨 상단에 나오는 라이브러리를 받을거다. 

 

받으면 이런 창으로 넘어간다. 

당연히 아직 트래픽이 없다. 

구글 api를 사용하려면 api키와 oauth 인증키를 받아야한다. 

좌측 파란 버튼 누른다. 

 

1, 2 항목은 환경에 맞게 설정한다. 

3번에서 범위를 선택한다. 

해당 프로젝트가 사용할 API 사용 범위다. 

구글 드라이브를 사용한다면 파일 보기만 가능하게 권한을 주거나, 파일 수정, 삭제도 가능하게 권한을 주거나... 할 수 있다. 

이것도 환경에 맞게 설정한다. 

 

4번 항목에서 OAuth 클라이언트 ID를 만든다. 

애플리케이션 유형은 웹앱인지 모바일인지 환경에 맞게 설정한다. 

승인된 리디렉션 URI가 중요한데, OAuth에서 인증하는 로직과 관련이 있다. 

아래 블로그에 설명이 잘 되어있다. 설정하면서 블로그를 보고 많이 배웠다. 

https://devdiary.tistory.com/6 

 

Local 에서 Google API 테스트 (feat. Google OAuth 2)

발단 Google Search Console을 이용하여 색인 데이터를 추가 / 삭제하는 API를 사용하기 위해 간단히 Local에서 테스트해보려 합니다. developers.google.com/search/apis/indexing-api/v3/quickstart Indexing API 빠른 시작 |

devdiary.tistory.com

 

OAuth를 사용할 때 구글에 리다이렉트 요청을 같이 보내야 한다. 리다이렉트 요청 URL은 사용자가 접근할 수 있는 URL이여야 한다. 간단하게 말하면 서버 도메인이며 개발 기간에는 localhost가 될 수 있다. 

나는 로컬에서 테스트를 하기 때문에 127.0.0.1로 설정했다. 

 

4번항목까지 완료하면 클라이언트 키가 발급된다. 

발급받은 키는 다운로드 버튼을 눌러서 다운받는다. json 형식으로 저장된다. 

 

좌측메뉴 > 사용자인증정보 클릭하면 방금 만든 OAuth 키를 볼 수 있다. 

이제 API 키를 만들어준다. 

 

키는 금방 만들어진다. 지금 당장 복사할 필요는 없다. 

그런데 방금 만든 키에 경고⚠️ 표시가 보인다. 눌러보자. 

 

1. 애플리케이션 제한사항 설정 -> 환경에 맞게 항목 선택하고 요청받을 웹사이트도 입력한다. 

 

 

2. API 제한사항 설정 

나는 구글 드라이브 API만 사용할 거라서 1개만 선택했다. 

 

 

여기까지 하면 구글에서 할 환경 세팅은 끝이다. 

이제 소스 작성만 남았다. 

 

소스 작성은 다음 포스팅에서 설명한다.