nbspou / dospace Goto Github PK
View Code? Open in Web Editor NEWDart client library to interact with the DigitalOcean Spaces API. Same API as Amazon AWS S3.
License: BSD 3-Clause "New" or "Revised" License
Dart client library to interact with the DigitalOcean Spaces API. Same API as Amazon AWS S3.
License: BSD 3-Clause "New" or "Revised" License
Library should handle everything behind the scenes.
We also want a mechanism for pre-signing both uploads and downloads in the style of new Bucket.signed(string endpointUrl, string key, Map<String, String> signatureHeaders)
as specified by issue #1.
How to use presigned url to upload?
Instead of making separate client objects for the spaces server and buckets, have a separate Spaces client and Bucket client. The Spaces client should have a function to create the Bucket client, and adjust the endpoint Uri accordingly. It should still be possible for the user to create the Bucket client directly.
Hello,
can you update the xml dependency? Because it causes problems with other libraries that use a high version of xml.
Thanks
Setting Cache-control metadata to bucket.uploadFile gets overwritten /updated as custom metadata.
e.g. Map<String, String> metadata = {'Cache-Control':'public'}
String etag = await bucket.uploadFile(
objectKey, File(filePath), lookupMimeType(filePath), dospace.Permissions.public,meta: metadata);
uploads with the metadata as x-amz-meta-cache-control. dospace_bucket.dart overrides the metadata value always with x-amz
Hi,
Your xml dependency is very outdated and is clashing with other packages. Plz consider upgrading it. Have also raised a PR for the same.
Thanks
I am trying to upload File instance from 'dart:html' but this library is not able to upload the files. I have tried multiple things, like converted file instance to Uint8List also
The client app will send to the server the filetype, filesize, and sha256 hash of the file which it needs to upload. In general these files will be images. It may be nice to let the library generate the options, if it proves useful and practical.
After validating the received options, the server will generate the key for the file in the storage bucket, store this key with the user's account in the database, and then use the library to generate the signed HTTP request to upload the data. The request headers and options are then sent to the client app.
Using the pre-signed HTTP request from the server, the client will upload the file, and notify the server when it is finished. The library is used to handle the upload properly with the pre-signed request.
Handling failed or non-uploaded files and other database cleanup is up to the server, and not a concern here.
hey guys,
any plans to update to null safety?
List maxKeys
should actually limit and additional requestMaxKeys
field should limit per request
This package needs to update xml and http dependencies
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.