JavaScript implementation of Edgio token (
ectoken)
JavaScript implementation of the "Edgio Token" (ectoken) - see main repo ectoken for more details.
$ npm install @edgio/ectoken
const { ECToken, encrypt, decrypt } = require('@edgio/ectoken')
const ec_token = new ECToken()
ec_token.addValue('ec_country_allow', 'US')
// Add additional directives in the same way.
const token = await encrypt('my-secret-key', ec_token)
const plaintext = await decrypt('my-secret-key', token)If installing this library as a replacement for ectoken-nodejs, import the V3 namespace instead:
const { V3 } = require('@edgio/ectoken')
const token = await V3.encrypt('my-secret-key', 'some_param=valueA&some_other_param=valueB')
const plaintext = await V3.decrypt('my-secret-key', token)Please Note: because this version of the token generator uses crypto.subtle, the encrypt and decrypt functions are now asynchronous.
The ECToken helper class is optional for both the namespaced and non-namespaced import variations. The encrypt function will accept either an ECToken object or a plain string.
We welcome issues, questions, and pull requests.
This project is licensed under the terms of the Apache 2.0 open source license. Please refer to the License-2.0.txt file for the full terms.