[dart] HTTP 요청 시에 요청/응답 데이터 유효성 검사하기
아래는 Dart에서 HTTP 요청과 응답 데이터를 유효성 검사하는 방법에 대한 예시입니다.
요청 데이터 유효성 검사하기
import 'dart:convert';
Map<String, dynamic> validateRequestData(Map<String, dynamic> requestData) {
if(requestData.containsKey('username') && requestData.containsKey('password')) {
return requestData;
} else {
throw Exception('Invalid request data');
}
}
응답 데이터 유효성 검사하기
import 'dart:convert';
Map<String, dynamic> validateResponseData(String responseData) {
try {
Map<String, dynamic> parsedData = jsonDecode(responseData);
if(parsedData.containsKey('status') && parsedData.containsKey('message')) {
return parsedData;
} else {
throw Exception('Invalid response data');
}
} catch (e) {
throw Exception('Failed to parse response data');
}
}
위의 예시에서는 요청 데이터와 응답 데이터의 유효성을 각각 validateRequestData
와 validateResponseData
함수를 통해 검사하고 있습니다. Dart의 jsonDecode
함수를 사용하여 JSON 형식의 응답 데이터를 Map으로 파싱하고, 이후에 검증을 수행하고 있습니다.
참고문헌:
- Dart Documentation. “JSON and serialization.” https://dart.dev/guides/json