일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- springboot세팅
- vite.config.js
- API
- drawer 설정
- refreshtoken값
- Geolocator
- 네이버API
- Java
- kakaoAPI
- googleoath2연결
- springboot
- Flutter
- 젠킨스초기설정
- naverapi
- flutter drawer
- dynamicrouter
- Spring-boot
- googlerefreshtoken
- 로그제거
- jenkins설치
- 카카오API
- DART
- vite
- refreshtoken값받기
- spring
- oath2
- vite설정
- restapi
- 플루터
- 스프링부트
- Today
- Total
사소한것부터 바꾸자
Google-OAth2 - refreshToken 값 받기 2 본문
https://changeminor.tistory.com/9
1부분 완성 했다면 이제 2부분으로 가야겠지?
시작 해보자!
API 사용해보기 클릭 해주고
Guides 클릭하고
Authorize Requests 클릭
Scope에 URL 하나 복사 해서 메모에 저장 (조금 이따가 사용할예정)
그리고 OAuth 2.0 documentation 클릭
OAuth 2.0 Scopes 클릭 해주고
서버측 웹 앱용 OAuth 2.0 클릭 하고 드래그 해서 위 사진 처럼 Authorize Code http로 받는 가이드 까지 내려와 주면됨
그냥 사진 과 똑같이 생긴거 나올때까지 드래그 해!
GET 뒤에 https부터 true까지 복사! (그리고 더 드래그 하면 아래에서 사용할 부분이 나옴 !!!! 아래에서는 그냥 위에서 언급한 드래그 드래그 하면 드래그 해서 나오면 드래그 하게되면 나온다 뭐 이정도로 언급 하겠음 우하하하하하하하 글을 꼼꼼히 봐야 한다는거 다시 한번 강조 합니다)
Spring Boot 프로젝트로 돌아와서 jsp 파일 열어주고
<a> 태그 href 에 복사해서 붙여 넣기
scope= 사이 & 여기 사이 값 지워 버리고 redirect_uri 도 똑같이 지워버리고
google에 online url encoding 검색하서
url encoding 해주는 사이트 아무곳이든 상관없으니 들어가서
아까 메모에 적어놓은 값(기억나죠? 막 드래그해서 블로그 보는거 아니죠? 정말 꼼꼼하게 처음 하는 사람이 보아도 알수 있게 적고 있는데 긴 시간을 투자 해서 성의를 봐서라고 기억 해야 되요!!!)
값 넣고 Encode 클릭
그러면 위와 같이 아름답게 Encoding이 될꺼야!
다시 복사해서
scope값에 넣어 주고
이부분은 처음 클라이언트 ID 만들때 부분인데 (잘 기억 나지 않으면 1보고 오세요 링크 맨위에)
url 주소 복사해서 똑같이 Encoding 해주고
redirect_uri 값에 붙여넣으면 끝
인줄 알았으나 아니죠 ㅋㅋ
client_id값도 복사해서 넣어 줘야 진짜 끝!! 인거 같으면서 아니라는거
<a href="https://accounts.google.com/o/oauth2/v2/auth?scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fcalendar&access_type=offline&include_granted_scopes=true&response_type=code&state=state_parameter_passthrough_value&redirect_uri=http%3A%2F%2Flocalhost%3A8080%2Freturngood&client_id=296274828209-jgo80b1mb6aeltl05j9sc7dkvfl920pd.apps.googleusercontent.com">구글 API 사용 인증</a>
a태그에서 href 줄바꿈 지원하지 않기 때문에
위와같이 한줄로 정리를 해주어야 진짜 끝
이제 cotroller에서 /login url 받아서 해당 jsp로 갈수 있게 해주고
/returngood 도 설정해주고 reciveCode.jsp 파일 더 만들어주고 해당 jsp로 가게끔 설정 해주면 끝
1에서도 언급은 했지만 바로 이부분 구글에서 Authorize 값을 받기 위한 url 임으로
/원하는 url 만들어서 원하는 jsp파일에서 받으면 됨(spring-boot) 타 프로젝트는 바로 해당 html 파일 또는 php 파일 주소를 넣어 줘도 상관없다는거 해당 값을 clientid 만들때 리디렉션 url에 넣어 주고 해야 함
(이부분 잘 모르면 아래링크통해서 공부 하고 오세요! git에 소스 공유 해놀게요 )
2020/09/04 - [Spring-Boot] - [Spring-Boot]네이버 REST API 사용법 - 1(파파고번역)
자 이제 클릭을 신나게 해보겠습니다.
위사진 순서대로 쭈~욱~ 클릭 하다보면 마지막 여기까지 오게 될꺼야
url 보면 뭐가 막 값이 적혀서 오는데 위에서 설정한 reciveCode.jsp로 돌아 오게 되지요 저기서 중요한 부분은 바로 code=값 바로 이 값이며 해당 값은 1회용으로 한번생성되고 url 벗어나거나 브라우저 끄고 다시 켜서 재사용 불가 다시 받아서 사용해야 하니 메모 하거나 하지 말고 잘 되는지 code값이 받아 져 왔는지 확인 만 하면 끝!
잘되면 아래 부분 진행 안되면 다시 위로 올라가서 확인 하고 오시길
자 위에서 언급한 드래그 드래그 기억나면 바로 드래그 해서 위사진 찾아!
내용 복사해서
바로 여기 reciveCode.jsp로 고고
a태그는 로그인하러 가기 위함 (우린 개발자니 편하게 일을 해야져~)
form 태그 만들고 위에서 처럼 주저리 주저리 적어주고 드래그 한 내용 참조해서 작성한거니
붙여넣고 잘 만들어
redirect_uri post로 form태그 전송할때는 자동 encoding 되니 굳이 안하셔도 됨 하면 에러!!!
그래도 친절하게 /returngood url 관련 적어본다 이렇게 Cotroller에 적으라는 뜻
properties파일(yml파일) 에 값을 입력을 .... 그냥 지난글 naver api를 보고 오길....
그정도 정성도 없으면 개발을 하지 않는게 좋을것 같다
자 다시 http://localhost:8080/login 부터 쭈욱 내려오다 보면
위사진 처럼 code에 값을 자동으로 받을 것이고
제출 버튼 누르기 전에 마지막으로 client_id, client_secret 값을 입력하고
제출 버튼 클릭하면
이렇게 refresh_token 값을 받아 오게 될것이다.
축하한다 드디어 구글의 Calendar api를 사용할수 있는 token 값을 받았다
refreshtoken값은 딱 한번 발급되고 위 과정을 다시 실행하면 access_token 값은 항시 바뀌는데 더이상 refresh_token값은 나타 나지 않으므로 메모에 잘 적어두길
다시 발급 받을려면 아래에 있는 내용따라 권한 삭제 하고 다시 발급 받으면 된다
myaccount.google.com/permissions
링크도 친절하게 적어두고
과정설명도 이정도면 뭐 ... ㅋㅋ
역시 난 친절해
다음에는 google의 라이브러리에 대해 또 설명을 해보겠다.
아마 광고업체나 키워드광고 대행업체에서 제일 궁금해 하는 부분일텐데 ㅋㅋ
오케이 그냥 포스팅 해주지 !!
어차피 나도 공부가 되고
java 버전의 구글의 예제를 실제로 사용하는 방법
키워드 가져와서 지우고 소재생성
ads.properties 에 client id, client secret 등을 DB에 저장해놓고
접속하는 업체별로 자동 DB에서 가져와서 접속하는 방법등을 업로드 하겠다.
코드도 길고 내용도 많아서 정리 하는데 시간이 좀... 그래도 복습이라고 생각하고 올려야지
나도 사람이니 메모는 습관처럼 !! 그럼 이번 포스팅은 여기서 마무으리! <- 너무 옛날사람? ㅋㅋㅋ
'백엔드 > GoogleOAth2' 카테고리의 다른 글
Google-OAth2 - refreshToken 값 받기 1 (0) | 2020.10.22 |
---|