This repository has been archived on 2018-10-12. You can view files and clone it, but cannot push or open issues or pull requests.
node-task/node_modules/csurf/node_modules/csrf/node_modules/uid-safe/README.md

45 lines
1.1 KiB
Markdown

# UID Safe
Create cryptographically secure UIDs safe for both cookie and URL usage.
This is in contrast to modules such as [rand-token](https://github.com/sehrope/node-rand-token)
and [uid2](https://github.com/coreh/uid2) whose UIDs are actually skewed
due to the use of `%` and unnecessarily truncate the UID.
Use this if you could still use UIDs with `-` and `_` in them.
## API
```js
var uid = require('uid-safe')
```
### uid(byteLength, [cb])
Asynchronously create a UID with a specific byte length.
Because `base64` encoding is used underneath, this is not the string length!
For example, to create a UID of length 24, you want a byte length of 18!
If `cb` is not defined, a promise is returned.
However, to use promises, you must either install [bluebird](https://github.com/petkaantonov/bluebird)
or use a version of node.js that has native promises,
otherwise your process will crash and die.
```js
uid(18).then(function (string) {
// do something with the string
})
uid(18, function (err, string) {
if (err) throw err
// do something with the string
})
```
### uid.sync(byteLength)
A synchronous version of above.
```js
var string = uid.sync(18)
```