본문 바로가기

Flutter-플러터/플러터 공부

http : statusCode

반응형

오늘도 내게 일용할 지식을 전수해주는 바드선생 

 

api를 받는 코드를 쭈욱 보다가 

stausCode를 쓰는 사람도 있고 안쓰는 사람도 있다는 걸 알게되었다. 

그래서 statusCode에 대해 공부해봤다. 

http응답과 관련한 상태에 대한 숫자이다. 

작동 코드를 짤 때 조건문에 넣거나 

오류를 표현할 때 많이 쓰인다. 

 


statusCode는 HTTP 응답에서 서버 상태를 나타내는 3자리 숫자입니다. statusCode는 요청이 성공적으로 처리되었는지, 에러가 발생했는지, 리다이렉션이 필요한지 등을 나타냅니다.

statusCode는 다음과 같이 5가지 범주로 나뉩니다.

  • 1xx (Informational 100-199): 요청이 수신되었으며 처리 중입니다.
  • 2xx (Successful 200-299): 요청이 성공적으로 처리되었습니다.
  • 3xx (Redirection 300-399): 요청을 완료하려면 추가 작업이 필요합니다.
  • 4xx (Client Error 400-499): 클라이언트가 잘못된 요청을 보냈습니다.
  • 5xx (Server Error 500-599): 서버에서 오류가 발생했습니다.

statusCode를 사용하여 HTTP 응답을 처리하는 방법은 다음과 같습니다.

  1. statusCode가 200이면 요청이 성공적으로 처리되었음을 의미합니다.
  2. statusCode가 300이면 요청을 완료하려면 추가 작업이 필요함을 의미합니다.
  3. statusCode가 400이면 클라이언트가 잘못된 요청을 보냈음을 의미합니다.
  4. statusCode가 500이면 서버에서 오류가 발생했음을 의미합니다.

statusCode를 사용하여 HTTP 응답을 처리하면 요청이 성공적으로 처리되었는지, 에러가 발생했는지 등을 쉽게 확인할 수 있습니다.

import 'package:http/http.dart' as http;

void main() {
  // 요청 URL을 지정합니다.
  final url = 'https://api.openweathermap.org/data/2.5/weather?q=Seoul,kr&appid=YOUR_API_KEY';

  // 요청을 생성합니다.
  final request = http.get(url);

  // 요청을 실행합니다.
  request.then((response) {
    // 응답 상태 코드를 확인합니다.
    if (response.statusCode == 200) {
      // 응답 본문을 처리합니다.
      final weatherData = json.decode(response.body);

      // 날씨 데이터를 출력합니다.
      print(weatherData['weather'][0]['main']);
    } else {
      // 응답 상태 코드가 200이 아닌 경우 오류를 출력합니다.
      print('Error: ${response.statusCode}');
    }
  });
}
이 코드는 서울의 날씨 정보를 조회합니다. 응답 상태 코드가 200이면 요청이 성공적으로 처리되었음을 의미하며, 응답 본문을 처리합니다. 응답 상태 코드가 200이 아닌 경우 오류를 출력합니다.

 

반응형

'Flutter-플러터 > 플러터 공부' 카테고리의 다른 글

Flutter - dotenv  (0) 2023.08.21
플러터 code push기능  (0) 2023.08.10
NewsAPI를 이용하기  (0) 2023.08.08
Flutter http 패키지에 대해  (0) 2023.08.06
Geolocator 패키지  (0) 2023.08.05