회사에서 강의? 있는거 일단 차근차근 정리하기용~
API란?
API Gateway

위의 그림과 같이 api서버주소(데이터 주는 곳)이 다른데 요청할때마다 매번 다른 주소를 요청하는것이 번잡해 사용하는것
🌱 클라이언트와 백엔드 사이에서 데이터를 주고 받는 중계자 역활이라고 생각하면 됨
Rest Api Gateway는 4가지 단계로 데이터 처리

➕ Swagger란?
API에 대한 정보를 전달하기 위해 일일이 문서화하는 것은 매우 번거롭다.
Swagger는 이러한 API문서를 자동으로 생성하여 HTML로 만들어주는 오픈 소스 프레임워크이다.
➕ API EndPoint란?
API 엔드포인트는 API 호출이 수행되는 곳이다.
즉, API가 RESTful API를 인터페이스를 통해 서버의 리소스에 액세스 할 수 있도록 해주는 URL
➕ Cors란?
주요 메소드
GET: 리소스 조회
POST: 요청 데이터 처리, 주로 등록에 사용
PUT: 리소스를 대체, 해당 리소스가 없으면 생성
PATCH: 리소스 부분 변경
DELETE: 리소스 삭제
기타 메소드
HEAD: GET과 동일하지만 메시지 부분을 제외하고, 상태 줄과 헤더만 반환
OPTIONS: 대상 리소스에 대한 통신 가능 옵션(메소드)을 설명(주로 CORS에서 사용)
CONNECT: 대상 자원으로 식별되는 서버에 대한 터널을 설정
TRACE: 대상 리소스에 대한 경로를 따라 메시지 루프백 테스트를 수행
API가 서버에서 리소스에 접근할 수 있도록 가능하게 하는 URL
프로그래밍 방식으로 AWS 서비스에 연결하려면 엔드포인트를 사용
➕ 인증 - 인증은 유저가 유효한지를 확인하는 것(로그인이 되는지 안되는지)
💫 AWS에서는 Cognito로 가능
💫 API에서 オーソライザー에서 인증 가능
➕ 인가 - 해당 유저가 권한이 있는지 없는지를 확인하는것 (로그인은 되어있지만, 유저인지 관리자인지 확인해 관리자만 보이게 하는것)
➕ JWT(Json Web Token) - 일반적으로 클라이언트와 서버 사이에서 통신할 때 권한을 위해 사용하는 토큰

Header - 토큰 타입과 알고리즘 정보가 담겨있는 부분
Payload - 유효기간 등의 데이터가 담겨있는 부분
Signature - 앞의 정보를 암호화 한 내용이 들어가는 부분