sanitize-s3-objectkey
v0.0.1
Published
Remove and replace illegal characters in S3 Object Keys
Downloads
22,855
Readme
sanitize-s3-objectkey
0 dependencies library to sanitize S3 object keys.
Motivation
You can use any UTF-8 character in an S3 object key name. However, using certain characters in key names may cause problems with some applications and protocols (source).
This library applies some conversions on the provided object key to help mitigate these problems.
In particular:
- spaces at the beginning and end of the string are removed
- spaces inside the string are replaced by a (configurable) separator
- accents from latin characters are removed
- illegal characters are removed
This project is heavily inspired by s3-filename.
Installation
npm install sanitize-s3-objectkey
Usage
const sanitize = require('sanitize-s3-objectkey');
sanitize('áêīòü'); // aeiou
sanitize('pipes|are|not|valid'); // pipesarenotvalid
sanitize('spaces should be replaced'); // spaces-should-be-replaced
sanitize('spaces should be replaced', '/'); // spaces/should/be/replaced
Contributing
Feedback, bug reports, and pull requests are welcome.
For pull requests, make sure to follow the following guidelines:
- Add tests for each new feature and bug fix.
- Follow the existing code style, enforced by eslint.
- Separate unrelated changes into multiple pull requests.
License
Apache License 2.0, see LICENSE.