logResponse method
Implementation
void logResponse(ResponseData data) {
if (logLevel == LogLevel.NONE) return;
if (logLevel == LogLevel.BASIC) {
print("<-- ${data.statusCode} (${data.contentLength}-byte Body)");
return;
}
String method = data.method.toString().split(".")[1];
print("<-- $method ${data.statusCode}");
bool logBody = logLevel == LogLevel.BODY;
bool logHeaders = logBody || logLevel == LogLevel.HEADERS;
if (logHeaders) {
print("URL: ${data.url}");
print("HEADERS:");
Map<String, String>? headers = data.headers;
if (headers == null || headers.length == 0) {
print("Request has no headers.");
} else {
StringBuffer headersBuffer = StringBuffer();
headers.forEach((key, value) => headersBuffer.write("$key: $value\n"));
print(headersBuffer.toString());
}
//Log the request body
if (logBody) {
print("BODY:");
if (data.body == null) {
print("Request has no boy.");
} else {
print(data.body);
}
}
}
print("<-- END HTTP");
}