contentEncoding
validation in AJV
ajv-content-encoding: Plugin for Adds support to AJV for validating
strings with contentEncoding
.
Supports the types defined in RFC2045:
base64
, 7bit
, 8bit
, binary
, and quoted-printable
.
Install
yarn add ajv-content-encoding
or
npm install ajv-content-encoding
Usage
const Ajv = require('ajv');
const ajv = require('ajv-content-encoding')(new Ajv());
const validate = ajv.compile({
type: "string",
contentEncoding: "base64"
});
validate("aGVsbG8K"); // true
validate("invalid"); // false
Caveats
- The values of
contentEncoding
should be all-lowercase, and are case-sensitive (i.e.base64
,7bit
,8bit
,binary
, andquoted-printable
). - The
quoted-printable
validation does not validate all constraints on quoted-printable encodings. E.g., it is more forgiving in when to allow newline characters etc.