upload method
Implementation
Future<int> upload() async {
if (uploaded.isCompleted) return 200;
final re = await Request('GET', urlFile(name)).send();
if (re.statusCode == 200 || re.statusCode == 204) {
uploaded.complete();
return 200;
}
if (uploader != null) {
final serverPath = await uploader!(this);
if (serverPath != null) uploaded.complete();
return 200;
}
var url = Uri.parse(
"$http/upload",
);
// Create a MultipartRequest object to hold the file data
var request = MultipartRequest('POST', url);
request.files.add(MultipartFile.fromBytes(
'file',
bytes,
));
try {
final re = await request.send();
//var responseBody = await response.stream.bytesToString();
if (re.statusCode == 200) uploaded.complete();
return re.statusCode;
} catch (e) {
print('failed to upload $name');
}
return 0;
}