e3475bc17b
### Packages impacted by this PR ### Issues associated with this PR ### Describe the problem that is addressed by this PR ### What are the possible designs available to address the problem? If there are more than one possible design, why was the one in this PR chosen? ### Are there test cases added in this PR? _(If not, why?)_ ### Provide a list of related PRs _(if any)_ ### Command used to generate this PR:**_(Applicable only to SDK release request PRs)_ ### Checklists - [ ] Added impacted package name to the issue description - [ ] Does this PR needs any fixes in the SDK Generator?** _(If so, create an Issue in the [Autorest/typescript](https://github.com/Azure/autorest.typescript) repository and link it here)_ - [ ] Added a changelog (if necessary) |
||
---|---|---|
.. | ||
arm-storage | ||
arm-storage-profile-2020-09-01-hybrid | ||
perf-tests | ||
storage-blob | ||
storage-blob-changefeed | ||
storage-common/src | ||
storage-file-datalake | ||
storage-file-share | ||
storage-internal-avro | ||
storage-queue | ||
CONTRIBUTING.md | ||
ISSUE_TEMPLATE.md | ||
LICENSE | ||
MigrationGuide.md | ||
README.md | ||
ci.mgmt.yml | ||
ci.yml | ||
sample.env | ||
test-resources-post.ps1 | ||
test-resources.bicep |
README.md
Azure Storage client library for JavaScript
Azure Storage is a Microsoft-managed service providing cloud storage that is highly available, secure, durable, scalable, and redundant.
This project provides client libraries in JavaScript that makes it easy to consume Microsoft Azure Storage service.
Note: Current Azure Storage client libraries are published from storage/stable branch.
- Source Code - Blob
- Source Code - File Data Lake
- Source Code - File Share
- Source Code - Queue
- Product documentation
- @azure/storage-blob Package (npm)
- @azure/storage-file-datalake Package (npm)
- @azure/storage-file-share Package (npm)
- @azure/storage-queue Package (npm)
- API Reference documentation
- Azure Storage REST APIs
Key concepts
Features
- Blob Storage
- Get/Set Blob Service Properties
- Create/List/Delete Containers
- Create/Read/List/Update/Delete Block Blobs
- Create/Read/List/Update/Delete Page Blobs
- Create/Read/List/Update/Delete Append Blobs
- Data Lake Storage
- Create/List/Delete File Systems
- Create/Read/List/Update/Delete Paths, Directories and Files
- File Storage
- Get/Set File Service Properties
- Create/List/Delete File Shares
- Create/List/Delete File Directories
- Create/Read/List/Update/Delete Files
- Queue Storage
- Get/Set Queue Service Properties
- Create/List/Delete Queues
- Enqueue/Dequeue/Peek/Clear/Update/Delete Queue Messages
- Features new
- Asynchronous I/O for all operations using the async methods
- HttpPipeline which enables a high degree of per-request configurability
- 1-to-1 correlation with the Storage REST API for clarity and simplicity
Compatibility
These libraries are compatible with Node.js and browsers, and validated against LTS Node.js versions (>=8.16.0) and latest versions of Chrome, Firefox and Edge.
Architecture
The Azure Storage client libraries for JavaScript provides low-level and high-level APIs. Take Blob client library as example:
-
BlobServiceClient
,ContainerClient
andBlobClient
objects provide the low-level API functionality and map one-to-one to the Azure Storage Blob REST APIs. -
The high-level APIs provide convenience abstractions such as uploading a large stream to a block blob (using multiple PutBlock requests).
Examples
Please check out examples for each libraries
- Blob Storage Examples
- Blob Storage Examples - Test Cases
- Data Lake Storage Examples
- Data Lake Storage Examples - Test Cases
- File Storage Examples
- File Storage Examples - Test Cases
- Queue Storage Examples
- Queue Storage Examples - Test Cases
Contributing
If you'd like to contribute to this library, please read the contributing guide to learn more about how to build and test the code.