Socket
Socket
Sign inDemoInstall

aws-s3-utils

Package Overview
Dependencies
1
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    aws-s3-utils

Node.js library providing high-level wrapper for convenient AWS S3 capabilities


Version published
Weekly downloads
2
Maintainers
1
Created
Weekly downloads
 

Readme

Source

aws-s3-utils

What is this?

Node.js library providing high-level promise-based wrapper for convenient AWS S3 capabilities such as downloading an S3 object as a string or directly to a file.

Installation

yarn add aws-s3-utils

Usage

Download to String

Downloading an S3 object to a string is implementing streams behind the scenes, and works as simple as defining a Map for the options and invoking the downloadToString promise:

const awsS3Util = require('aws-s3-utils')

const params = new Map()
params.set('config', { credentials: { accessKeyId: 'id', secretAccessKey: 'key' } })
params.set('object', { Bucket: 'somebucket', Key: 'filename' })

awsS3Util.downloadToString(params)
  .then((s3Contents) => {
  	console.log(`downloaded s3 object content is: ${s3Contents}`)
  })

You can also pass a key that sets a character byte limit on the length of the string:

params.set('maxSize', 2)

Download to File

Downloading an S3 object to a file is also implemented using streams and works by invoking the downloadToFile promise.

The downloadToFile supports the following download settings on the provided Map options:

  • If tempDirectory is specified then the library will create a unique temporary directory inside the tempDirectory directory and download the file there.
  • If destFile is specified then the downloaded file wil be named using this filename.
  • If destDirectory is specified then the downloaded file will be placed directly inside this directory without creating any upper level unique directory. If both this option and tempDirectory are specified then this option takes precedence.
const awsS3Util = require('aws-s3-utils')

const params = new Map()
params.set('config', { credentials: { accessKeyId: 'id', secretAccessKey: 'key' } })
params.set('object', { Bucket: 'somebucket', Key: 'filename' })
params.set('download', { tempDirectory: '/tmp' })

awsS3Util.downloadToFile(params)
  .then((filepath) => {
  	console.log(`downloaded s3 object content is: ${s3Contents}`)
  })

Tests

Project tests:

yarn test

Project linting:

yarn lint
yarn lint:fix

View Coverage

yarn coverage:view

Developer Commit

The project uses the commitizen tool for standardizing changelog style commit messages so you should follow it as so:

git add .           # add files to staging
yarn commit      # use the wizard for the commit message

FAQs

Last updated on 12 Aug 2017

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc