🐢 꼬부기 LV.1 | 개념•기초/💧물대포(핵심개념)

로그인 API이해하기

서화 2025. 11. 28. 11:35

API란?

카카오톡을 예로 들어 사용자가 회원가입해줘/로그인 해줘 등의 기능을 요청한다

이때 사용자의 요구사항을 처리하는게 서버컴퓨터이며 사용자의 요청사항을 구분할 수 있는 정해진 경로를 알려줘야한다

즉 컴퓨터가 이해할수 있도록 만든 사인,사용자의 요청을 컴퓨터가 이해 할수 있게 만든 체계 또는 규칙을 

Application Programming Interface = API

라고한다

사용자가 서버에 요청을 보내면 서버 컴퓨터는 각각의 요청에 맞는 서버주소로 해당 요청을 받아서 수행한뒤 다시 사용자에게 응답해준다

사용자 요청 요청받는곳 기능수행
로그인해줘 로그인 서버주소 로그인기능수행
회원가입해줘 회원가입 서버주소 회원가입기능수행

 

로그인 API

로그인 API는 사용자가 로그인해줘 라는 요청을 했을때 그 요청을 서버에 전달하여 기능을 수행하고 사용자에게 응답하는 것이다

즉 사용자와 서버가 요청을 주고 받기때문에  데이터를 주고 받는것과 같으며 사용자는 서버에게 CRUD에 해당하는 요청을 보낼수 있다 하지만 이런식으로 필요한 부분을 하나씩 구성하다보면 주소가 너무 많이 생기고  개발자마다 요청하는 규칙을 다르게한다면 복잡한 문제가 생길수 있다 이러한 단점을 해결하고자 만든것이 Restful API라고 한다

 Restful API란?

CRUD를 각각의 서버주소로 호출하는것이 아니라 하나의 기능이 담긴 서버주소로 관리하는 체계다

사용자가 로그인 해줘라는 요청을 햇다면 예전에는 서버주소/로그인생성, 회원정보수정은 서버주소/회원정보 업데이트 이런식이었다면 Restful API는 서버주소/로그인 이라는 하나의 주소로 관리하고 요청내용을 알 수있는 명령어 하나만 붙이면 기능수행이 가능하다

OAuth

웹 서핑을 하다 보면 Google과 Facebook 등의 외부 소셜 계정을 기반으로 간편히 회원가입 및 로그인할 수 있는 웹 어플리케이션을 쉽게 찾아볼 수 있다.

클릭 한 번으로 간편하게 로그인할 수 있을 뿐만 아니라,

연동되는 외부 웹 어플리케이션에서 Facebook 및 Twitter 등이 제공하는 기능을 간편하게 사용할 수 있다는 장점이 있다.

예를 들어, Google로 로그인하면 API를 통해 연동된 계정의 Google Calendar 정보를 가져와 사용자에게 보여줄 수 있다.

이 때 사용되는 프로토콜이 바로 OAuth다.

OAuth에 대한 정의는 다음과 같다.

OAuth는 인터넷 사용자들이 비밀번호를 제공하지 않고 다른 웹사이트 상의 자신들의 정보에 대해 웹사이트나 애플리케이션의 접근 권한을 부여할 수 있는 공통적인 수단으로서 사용되는, 접근 위임을 위한 개방형 표준이다. 

왜 OAuth 방식을 쓰는가?

  • 우리가 직접 로그인 검증하는 방식
    → 아이디, 비밀번호, 해시, DB 저장, 보안 책임 전부 우리한테 있음
  • OAuth 방식
    → “로그인 정보는 카카오가 책임지고, 우리는 인증만 사용”
    → 보안 부담이 줄고, 유저가 편함 (카카오 계정 클릭 한 번)

카카오 OAuth의 두 가지 방식

방식  언제사용  난이도
✔ JavaScript SDK 방식 (너가 한 방법) 웹 프론트에서 로그인만 할 때 쉬움
✔ REST API 방식 서버에서 토큰 검증/로그아웃/리프레시 토큰 필요할 때 난이도 높음