리액트 API 호출

2023. 12. 14. 14:57·프로그래밍 언어/React 기초

리액트 API 호출

 

 

API(Application Programming Interface)

서로 다른 프로그램이 데이터를 주고받을 수 있도록 도와주는 인터페이스(매개체)이며, 일종의 규약이다.

 

 

 

[프로그램 A <-> 프로그램 B]

데이터를 주고받음

 

서로 다른 프로그램끼리 데이터를 주고받으려면, 당연히 서로 어떻게 통신하고, 어떤 데이터를 주고받을 것인지 미리 합의된 규약이 존재할 것이다.

 

프로그램 간 데이터를 주고받는 과정에서도 미리 합의된 규약이 존재해야 한다 그것이 API

 

 

두 프로그램이 서로 데이터를 주고받기 위해 소통할 때, 어떤 방식으로 서로 주고받을지 합의해서 매개체 역할을 해주는 일종의 규약 

 

 

 

 

 

REST API란

 

웹 서비스를 개발할 때 가장 범용적으로 사용되는 API이다. HTTP 프로토콜을 기반으로 동작한다.

 

요청하려는 데이터를 http로 시작하는 주소로 표현한다

ex) http://api.youtube.com/video/1

 

이때 api.youtube.com은 요청하려는 서버(호스트)의 주소에 해당하며

 

/video/1

은 요청하려는 데이터에 해당한다.

 

 

만약 클라이언트가 서버에게 http://api.youtube.com/video/1 같은 HTTP REQUEST를 보낼 때는 HTTP method도 함께 보내야 한다.

 

HTTP method는 서버가 데이터를 어떻게 처리해 주었으면 좋겠는지 설정하는 것이다.

 

데이터를 가져오고 싶을 때 : GET

데이터를 생성하고 싶을 때 : POST

데이터를 수정하고 싶을 때 : PUT

데이터를 삭제하고 싶을 때 : DELETE

 

 

 

 

 

api 끌어오기 

 

axios: http request를 좀 더 편하게 보낼 수 있게 도와주는 라이브러리 

 

npm i axios

을 통해 설치할 수 있다.

 

 

 

function fetchCountries () {
	const response = axios.get(‘https://~~’)
}

api 호출은 비동기로 작동한다. 즉 axiox를 호출한다고 해서 결과 값이 바로 변수에 저장되는 것이 아니다

 

 

 

async function fetchCountries () {
	const response = await axios.get(‘https://~~’)
}

 

만약 api 호출의 결과를 변수에 저장하고 싶으면 async와 await를 이용한다.

 

async를 붙인 함수는 비동기적으로 작동하며, await는 비동기 적으로 작동하는 함수 앞에 붙이게 되면, 비동기 함수가 종료될 때까지 기다려준다.

 

 

 

function fetchCountries () {

try{
	const response = axios.get(‘https://~~’);
	return response
}catch(e){
	return []
	}
}

api 호출은 언제든 실패할 수 있기에 위처럼 try-catch를 통해 에러 핸들링을 해줘야 한다.

 

 

 

 

 

https://axios-http.com/kr/docs/intro

 

시작하기 | Axios Docs

시작하기 브라우저와 node.js에서 사용할 수 있는 Promise 기반 HTTP 클라이언트 라이브러리 Axios란? Axios는 node.js와 브라우저를 위한 Promise 기반 HTTP 클라이언트 입니다. 그것은 동형 입니다(동일한 코

axios-http.com

공식문서를 계속 읽어보는 것이 좋을 것 같다.

'프로그래밍 언어 > React 기초' 카테고리의 다른 글

State  (2) 2024.02.28
리액트 현재 페이지 주소 복사!  (0) 2023.12.23
리액트 React Router  (0) 2023.12.03
리액트 간단한 모달창 만들기  (0) 2023.11.29
리액트 드래그 앤 드롭(DND)  (0) 2023.11.27
'프로그래밍 언어/React 기초' 카테고리의 다른 글
  • State
  • 리액트 현재 페이지 주소 복사!
  • 리액트 React Router
  • 리액트 간단한 모달창 만들기
tteokbokki-master
tteokbokki-master
공부하며 알아가는 걸 조금씩 정리하고 있어요
  • tteokbokki-master
    용로그
    tteokbokki-master
  • 전체
    오늘
    어제
    • 분류 전체보기
      • 프로그래밍 언어
        • HTML & CSS
        • JavaScript
        • React 기초
        • 파이썬 기초
        • TanStack-Query
        • C언어 기초
        • git
        • 리눅스
        • 코딩테스트 공부
      • 개발 지식
      • 언어학
        • 의미론
      • 회고 및 기록
      • 프로젝트
        • TodoList 만들기
        • 학수고대 프로젝트
      • 기타
        • [JS-0기] 한입 FE 챌린지
        • 서평
  • 인기 글

  • 글쓰기 / 관리
  • hELLO· Designed By정상우.v4.10.3
tteokbokki-master
리액트 API 호출
상단으로

티스토리툴바