Flutter

[Flutter] REST API와 HTTP 응답코드

mjjayce 2025. 4. 17. 21:10

REST API란?

  • 웹에서 자원을 처리하는 방식.
  • 클라이언트가 서버에 요청을 보내면, 서버는 요청에 맞는 자원을 응답
  • 주로 URL, HTTP 메서드(Get 등)

 

REST API에서 HTTP 요청하는 방법

 

Flutter에서 http 패키지를 사용해 REST API 요청 가능.


예시

final response = await http.get(Uri.parse('URL주소'));
  • GET: 데이터 요청
  • POST: 데이터 생성
  • PUT: 데이터 전체 수정
  • PATCH: 데이터 일부 수정
  • DELETE: 데이터 삭제

요청을 보낼 땐 주로 Uri.parse()로 주소를 파싱하고, 메서드에 따라 적절한 함수를 사용.

 

 

HTTP 응답이란?

서버가 클라이언트의 요청에 대해 보내는 결과 메시지.
요청이 잘 처리됐는지, 문제가 있었는지 알려줌.

 

주요 응답 코드:

  • 200 OK: 요청 성공
  • 201 Created: 생성 완료. 새로운 리소스가 생성되었을 때
  • 400 Bad Request: 요청 실패. 잘못된 데이터 줬을 때
  • 401 Unauthorized: 인증 필요. 로그인 안 되었을 때
  • 403 Forbidden: 접근 권한 없음. 리소스 접근 금지
  • 404 Not Found: 존재하지 않는 자원. URL 이 잘못되었거나 URL은 정상이지만 서버 내 데이터 없을 때
  • 500 Internal Server Error: 서버 에러

사용 예시

if (response.statusCode == 200) { // 정상 처리 로직 } 
else { // 에러 처리 로직 }

 

200이 정상적으로 요청이 성공했을 때 나오는 코드이기 때문에 200일 때 의도한 로직을 실행한다.

200이 아닌 경우 에러를 처리한다.