We have four clients, one each in python (data source), java, js, and C++ (latter three data consumers), all using Autobahn.
When we send JSON arguments, they get serialized by python using the single quote as the string delimiter (e.g. {'id': 123}). If we manually use json.dumps(argument_dict) the stuff is properly encoded JSON.
The python serialization with single quotes is happily accepted by the java and js clients but is rejected the C++ WAMP client.
If json.dumps is used then the java client gets a string rather than json (but C++ can parse it, with nlohmann/json or rapidjson).
What's the intended behavior here? I'm honestly surprised that the Java version works at all with this python output. I'm the C++ dev and the others suggest I just string replace the single quotes with double quotes, which sounds like a fragile "fix" to me. I'd like to have us all doing "the right thing"