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이 아닌 경우 에러를 처리한다.