thingy-schema-validate
v0.0.5
Published
JSON schema validation for the thingy ecosystem - more primitive and simple than real JSON schemas.
Downloads
76
Maintainers
Readme
thingy-schema-validate
Background
In the regular communication between thingies, we call the routes similar as functions. There our arguments are all inside one JSON and our response is also one JSON.
However, because we have a gap of whild free network in between where anybody could create any mal-crafted request or response, we should validate these for being well-formed before further processing.
After some small research about JSON-schemas and JSON Type Definitions, once again the conclusion was drawn that directly building the validators we need seems to be far less of a headache.
Usage
Requirements
- ESM importability
Installation
Current git version:
npm install -g git+https://github.com/JhonnyJason/thingy-schema-validate-output.git
Npm Registry
npm install -g thingy-schema-validate
Current Functionality
We have some "Enum" Types. We may import it into a validators-modulefile as:
import {
NUMBER, STRING, STRINGHEX, STRINGHEX32, STRINGHEX64, STRINGHEX128,
BOOLEAN, ARRAY, OBJECT, NONNULLOBJECT, NUMBERORNULL, STRINGORNULL,
STRINGHEXORNULL, STRINGHEX32ORNULL, STRINGHEX64ORNULL,
STRINGHEX128ORNULL, BOOLEANORNULL, ARRAYORNULL
} from "thingy-schema-validate"
This way we may build schemas like this:
functionArgumentSchema = {
argString: STRING
argNumber: NUMBER
}
Then we may use the validate Function to validate any object for this schema
import { validate } from "thingy-schema-validate"
args = foundArgsFromAroundTheCorner()
try validate(args, functionArgumentSchema)
catch err then log "seems the args was invalid!"
Further steps
- check if we need some more types
- maybe improve performance? Fix bugs?
All sorts of inputs are welcome, thanks!