xtyxtyx/minio-dart
Fork: 143 Star: 63 (更新于 2024-10-29 18:45:03)
license: MIT
Language: Dart .
Unofficial MinIO Dart Client SDK that provides simple APIs to access any Amazon S3 compatible object storage server.
最后发布版本: 2.0.0-pre ( 2021-03-28 18:45:42)
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',
);
AWS S3
final minio = Minio(
endPoint: 's3.amazonaws.com',
accessKey: 'YOUR-ACCESSKEYID',
secretKey: 'YOUR-SECRETACCESSKEY',
);
Filebase
final minio = Minio(
endPoint: 's3.filebase.com',
accessKey: 'YOUR-ACCESSKEYID',
secretKey: 'YOUR-SECRETACCESSKEY',
useSSL: true,
);
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');
}
For complete example, see: example
To use
fPutObject()
andfGetObject
, you have toimport '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'),
);
}
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());
}
Features and bugs
Please file feature requests and bugs at the issue tracker.
Contributions to this repository are welcome.
License
最近版本更新:(数据更新于 2024-09-01 09:29:57)
2021-03-28 18:45:42 2.0.0-pre
主题(topics):
dart, minio, object-storage, s3
xtyxtyx/minio-dart同语言 Dart最近更新仓库
2024-11-05 11:39:34 KaringX/karing
2024-11-05 08:14:52 localsend/localsend
2024-11-02 14:13:41 3003h/Eros-FE
2024-10-26 17:04:11 chen08209/FlClash
2024-10-22 11:36:07 AppFlowy-IO/AppFlowy
2024-10-10 23:24:57 guozhigq/pilipala