start method
Implementation
Future<void> start() async {
_server = await HttpServer.bind(InternetAddress.anyIPv4, port);
_server!.listen((HttpRequest request) async {
final requestPath = request.requestedUri.path.replaceFirst('/', '');
try {
if (requestPath == "list") {
await _listRequest(request);
} else if (requestPath == "upload") {
await _requestUpload(request);
} else if (requestPath == "download") {
await _requestDownload(request);
} else if (requestPath == "remove") {
await _requestRemove(request);
} else {
await _indexRequest(request, requestPath);
}
} catch (e) {
request.response.statusCode = HttpStatus.internalServerError;
request.response.write('Server Error: $e');
} finally {
await request.response.close();
}
});
}