Buffers and decodes the entire request body as a string (utf8 default).
Future<String> readAsString([Encoding encoding = utf8]) async => encoding.decode(await readBytes());