Kristian prodded me for this, and I decided to get this moving right away, because somebody else⢠will have to do the work of actually writing the functions to emit JSON for the relevant commands.
To get consistency in the output/structure/pathology of the resulting JSON, I'm appointing Kristian as our "JSON-Czar", (Subject to appeal to me, if he starts to demand Unicode emoticons etc.) See VCLS_func_help_json() for some hints. Be aware that the -j is passed to the json functions. Please always use the VCLI_JSON_ver() function. The version number is per-command. (The reason the call is conditional in 'help' is to deal with being called both from the master and the slave. Poul-Henning commit e0b9077c87b683a12af45daaf8c08ab4e7ce4195 Author: Poul-Henning Kamp <[email protected]> Date: Thu Feb 4 01:51:05 2016 +0000 Add support for JSON CLI responses. To get JSON back, the first argument must be "-j". Currently only "help -j" is implemented, but that will helpfully tell you which commands support json output. All JSON output has the form: [ version#, [<cli_command>], stuff ] For instance: [ 1, ["help", "-j"], { "request": "help", "syntax": "help [<command>]", "help": "\tShow command/protocol help.", "minarg": 0, "maxarg": 1, "flags": "", "json": true }, { "request": "ping", "syntax": "ping [<timestamp>]", "help": "\tKeep connection alive.", "minarg": 0, "maxarg": 1, "flags": "", "json": false }, ... ] The string quoting for weird characters in JSON is XXX incomplete. -- Poul-Henning Kamp | UNIX since Zilog Zeus 3.20 [email protected] | TCP/IP since RFC 956 FreeBSD committer | BSD since 4.3-tahoe Never attribute to malice what can adequately be explained by incompetence. _______________________________________________ varnish-dev mailing list [email protected] https://www.varnish-cache.org/lists/mailman/listinfo/varnish-dev
