[230410] [google drive api] java api 사용하기 (1) - api 사용 설정
글을 오랜만에 쓴다.
구글 드라이브 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개만 선택했다.
여기까지 하면 구글에서 할 환경 세팅은 끝이다.
이제 소스 작성만 남았다.
소스 작성은 다음 포스팅에서 설명한다.