코드 모듈화 프로젝트

2. Google 로그인 구현(Oauth2)

소금토스트 2024. 11. 11. 23:14
728x90
반응형
SMALL
반응형
SMALL

첫번째 이메일 인증에 이어서 이번에는 Google의 계정으로 로그인 기능을 시작하겠다.
Google로 로그인을 하면 이메일 인증과 마찬가지로 뭔가 Google과 어떤 연결고리가 생기는거같고
있어보이기 때문에 두번째로 선택했다. Google로 로그인하면 정말 편리하다.
예전에는 웹이든 앱이든 하나하나 회원가입하는 과정이 귀찮았는데 카카오,네이버, 구글 같은 
누구나 가지고있을만한 계정으로 로그인을 간단하게 해버리니 요즘 앱이나 웹에는 거의 필수로 사용되는것같다.

환경

Windows
Vscode

1. 그림과 같이 간단하게 세팅한다.

2. 그리고 아래와 같이 입력해서 설치한다.

npm install @react-oauth/google

App.tsx

import React from 'react';
import { GoogleOAuthProvider, GoogleLogin, CredentialResponse } from '@react-oauth/google';

const App = () => {
  const handleLoginSuccess = (response: CredentialResponse) => {
    console.log('Login Success:', response);
  };

  const handleLoginFailure = () => {
    console.log('Login Failed');
  };

  return (
    <GoogleOAuthProvider clientId=구글클라이언트아이디>
      <div>
        <h1>Google Login</h1>
        <GoogleLogin
          onSuccess={handleLoginSuccess}
          onError={handleLoginFailure}
        />
      </div>
    </GoogleOAuthProvider>
  );
};

export default App;

화면 코드는 이게 끝이다.
구글 클라이언트 아이디는 아래에서  받는 방법을 작성하겠다.

OAuth 구현하는것의 90%는 구글 설정하는것이다.

3. https://console.cloud.google.com/ 에 접속해서 가입한다. 가입할때는 주소, 결제 카드정보 같은게 필요하다.

3. 위쪽에 보면 프로젝트선택하는 부분을 클릭해서 새 프로젝트를 생성한다.

4. 프로젝트이름을 대충 Oauth-test같은걸로 작성하고 만들기를 클릭한다.

4

5. 왼쪽상단에 메뉴를 클릭하고 API 및 서비스-OAuth  동의 화면 을 클릭한다.

6. 내부, 외부 나오는데 외부 선택하고 만들기 클릭

7. 앱이름 , 사용자 지원 이메일 입력하고 아래 이메일 주소 입력하고 저장 후 계속클릭

8. 범위 에서는 설정 없이 저장 후 계속 클릭

9. 테스트 사용자 에서도 설정 없이 저장 후 계속 클릭

10. 요약화면 보이면 완성, 아래 대시보드로 돌아가기 클릭

               

11. 다시 왼쪽상단 메뉴클릭, API 및 서비스- 사용자 인증 정보 클릭

12. 이름 입력하고 첫번째 url 에 http://localhost:3000 입력, 
      두번째  url 에 http://localhost:3000/auth/google 입력후 만들기 클릭

13. 그러면 클라이언트 ID와 클라이언트 보안 비밀번호가 나오는데 위에 리액트 클라이언트 아이디 부분에 입력하면 끝

테스트

화면에서 Google 계정으로 로그인 클릭하면 구글 로그인 화면 나오는데 로그인 진행하면 아래처럼 나온다.

성공했다고 출력된다.

728x90
반응형
LIST