Google Developers
메뉴 -> API 및 서비스 -> 사용자 인증 정보
에서 사용자 인증 정보를 만들면 되는데, 유형은 웹 애플리케이션으로 만들고 RedirectURI와 React가 실행되는 주소를 등록
$ yarn add react-google-login
import GoogleLogin from "react-google-login"
const LoginGoogle = () => {
render (
<GoogleLogin
clientId={clientId}
onSuccess={onSignIn}
onFailure={onFailured}
cookiePolicy={'single_host_origin'}
responseType={"id_token"}
render={customForm} // 구글 로그인 버튼의 사용자 정의 폼 지정
/>
)
}
clientId
는 애플리케이션 등록시 발급받았던 clientId를 등록해주면 되고, onSuccess
속성으로 로그인 성공시 실행할 로직, onFailure
는 로그인 실패시 실행할 로직을 등록해줘야 한다.
$ yarn add react-kakao-login
import KakaoLogin from 'react-kakao-login'
const LoginKakao = ()=>{
render(
<div>
<KakaoLogin
onSuccess={result=>console.log(result)}
onFail={err=>console.log(err)}
token={Kakao_JSKey}
neddProfile={true} // optional
useLoginForm={true} // optional
/>
</div>
)
}
구글 로그인과 마찬가지고 onSuccess, onFail
은 각각 로그인 성공/실패시 실행할 비즈니스 로직이다. token에는 애플리케이션 등록시 발급받은 Javascript Key를 등록하면 작동할 것이다.
스프링과 함께 리액트에 대해서 공부를 진행하고 있는데, 확실히 자바스크립트 쪽이 쉽게 원하는 것을 구현할 수 있도록 되어있는 것 같다. 스프링 부트로 넘어오면서도 많은 부분이 간소화되어 쉽다고 생각했는데, 아직 자바스크립트만큼은 아닌거같다.