B2 Cloud Storage Save

Backblaze B2 Cloud Storage API Client. Implements all of the B2 Cloud Storage APIs, with helper methods for uploading files.

Project README

b2-cloud-storage

npm version dependencies Status Actions Status FOSSA Status

Backblaze B2 Cloud Storage API Client

b2-cloud-storage is an API wrapper for all current Backblaze B2 API operations. It provides helper methods for uploading files of all sizes, and takes care of the necessary chunking, parting, and API retries that need to happen to ensure files are uploaded successfully.

This module adheres the integration guidelines as published by Backblaze at https://www.backblaze.com/b2/docs/integration_checklist.html.

Basic Example

'use strict';
const b2CloudStorage = require('b2-cloud-storage');

const b2 = new b2CloudStorage({
	auth: {
		accountId: '<accountId>', // NOTE: This is the accountId unique to the key
		applicationKey: '<applicationKey>'
	}
});

b2.authorize(function(err){
	if(err){ throw err; }

	// this function wraps both a normal upload AND a large file upload
	b2.uploadFile('/path/to/file.zip', {
		bucketId: '<bucketId>',
		fileName: 'file.zip', // this is the object storage "key". Can include a full path
		contentType: 'application/zip',
		onUploadProgress: function(update){
			console.log(`Progress: ${update.percent}% (${update.bytesDispatched}/${update.bytesTotal}`);
			// output: Progress: 9% 9012/100024
		}
	}, function(err, results){
		// handle callback
	});
});

Documentation

You can read the full documentation here.

Roadmap:

  • Improve unit tests and code coverage
  • Add helper methods to delete all file versions for a single file
  • Add helper methods to better query paginated search

License

FOSSA Status

Open Source Agenda is not affiliated with "B2 Cloud Storage" Project. README Source: nodecraft/b2-cloud-storage
Stars
43
Open Issues
5
Last Commit
6 months ago
License
MIT

Open Source Agenda Badge

Open Source Agenda Rating