readAsString method

Future<String> readAsString({
  1. Encoding? encoding,
})

Reads the body content as String with encoding

Implementation

Future<String> readAsString({c.Encoding? encoding}) async {
  // TODO: detect encoding from headers
  encoding ??= c.utf8;
  if (encoding == c.utf8 && _bodyText != null) {
    return Future.value(_bodyText);
  }
  if (_bodyBytes != null) {
    return Future.value(encoding.decode(_bodyBytes!));
  }
  if (_bodyStream != null) {
    return encoding.decodeStream(_bodyStream as Stream<List<int>>);
  }
  if (_body != null) {
    throw StateError('Unable to convert body to String');
  }
  return '';
}