minio

Creator: coderz1093

Last updated:

Add to Cart

Description:

minio

MinIO Dart

This is the unofficial MinIO Dart Client SDK that provides simple APIs to access any Amazon S3 compatible object storage server.











API #



Bucket operations
Object operations
Presigned operations
Bucket Policy & Notification operations




makeBucket
getObject
presignedUrl
getBucketNotification


listBuckets
getPartialObject
presignedGetObject
setBucketNotification


bucketExists
fGetObject
presignedPutObject
removeAllBucketNotification


removeBucket
putObject
presignedPostPolicy
listenBucketNotification


listObjects
fPutObject

getBucketPolicy


listObjectsV2
copyObject

setBucketPolicy


listIncompleteUploads
statObject




listAllObjects
removeObject




listAllObjectsV2
removeObjects





removeIncompleteUpload





Usage #
Initialize MinIO Client #
MinIO
final minio = Minio(
endPoint: 'play.min.io',
accessKey: 'Q3AM3UQ867SPQQA43P2F',
secretKey: 'zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG',
);
copied to clipboard
AWS S3
final minio = Minio(
endPoint: 's3.amazonaws.com',
accessKey: 'YOUR-ACCESSKEYID',
secretKey: 'YOUR-SECRETACCESSKEY',
);
copied to clipboard
Filebase
final minio = Minio(
endPoint: 's3.filebase.com',
accessKey: 'YOUR-ACCESSKEYID',
secretKey: 'YOUR-SECRETACCESSKEY',
useSSL: true,
);
copied to clipboard
File upload
import 'package:minio/io.dart';
import 'package:minio/minio.dart';

void main() async {
final minio = Minio(
endPoint: 'play.min.io',
accessKey: 'Q3AM3UQ867SPQQA43P2F',
secretKey: 'zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG',
);

await minio.fPutObject('mybucket', 'myobject', 'path/to/file');
}
copied to clipboard
For complete example, see: example

To use fPutObject() and fGetObject, you have to import 'package:minio/io.dart';

Upload with progress
import 'package:minio/minio.dart';

void main() async {
final minio = Minio(
endPoint: 'play.min.io',
accessKey: 'Q3AM3UQ867SPQQA43P2F',
secretKey: 'zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG',
);

await minio.putObject(
'mybucket',
'myobject',
Stream<Uint8List>.value(Uint8List(1024)),
onProgress: (bytes) => print('$bytes uploaded'),
);
}
copied to clipboard
Get object
import 'dart:io';
import 'package:minio/minio.dart';

void main() async {
final minio = Minio(
endPoint: 's3.amazonaws.com',
accessKey: 'YOUR-ACCESSKEYID',
secretKey: 'YOUR-SECRETACCESSKEY',
);

final stream = await minio.getObject('BUCKET-NAME', 'OBJECT-NAME');

// Get object length
print(stream.contentLength);

// Write object data stream to file
await stream.pipe(File('output.txt').openWrite());
}
copied to clipboard
Features and bugs #
Please file feature requests and bugs at the issue tracker.
Contributions to this repository are welcome.
License #
MIT

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.