Some info about exe.json you can find in the documentation.
Suppose you have class ExeDispatcher with method importData(UserClass *arg);. UserClass can be any class with members like “a” or “MANYOTHERFIELDS” and must have dictionary.
Then you can submit POST http request with argument arg=_post_object_json_. As post data ROOT JSON has to be supplied - see how TBufferJSON::ToJSON does this. In simple cases one just requires extra _typename field to let ROOT correctly parse your JSON.
Alternatively, you can define your method like: importData(const char *arg);. And then simply use base64 format to code arbitrary JSON string to value which can be submitted to the server as plain URL argument. Something like:
Thank you @linev for your answer. In my case, the JSON to be sent from client to server is not at all linked to a user class / dictionary ; instead it is a fully custom JSON.
By the way it could be just “a string”.
How can the client send 32 KB of data to a function importData that runs on server?