EMQ X是一個高性能、高可靠、可擴展的開源MQTT消息代理,并且它還提供emqx json插件,該插件可以幫助用戶更加方便地處理JSON格式的MQTT消息。
[ { "id": 1, "name": "John", "age": 28 }, { "id": 2, "name": "Jane", "age": 32 } ]
emqx json插件支持在JSON格式的MQTT消息中進行解析和驗證,并且可以將其轉化為其他格式,例如Protobuf、Avro等。
使用emqx json插件,用戶只需要簡單地配置解析規則即可,如下所示:
{ "rules":[ { "match":"payload", "types":{ "employee":{ "id":"positive_integer", "name":"string", "age":"positive_integer" } } } ] }
以上規則指定了當解析MQTT消息中的payload時,將按照employee對象的格式解析并驗證消息。如果要使用emqx json插件,還需要在EMQ X配置文件中添加以下內容:
## Load EMQ X Plugin ## Plugin emqx_json to support JSON payloads ## plugin.emqx_json = on ## This plugin must be loaded after the emqx_recon and emqx_management plugins ## plugin.load = emqx_recon,emqx_management,emqx_json ## Add emqx_json configuration ## Default values: ## plugin.emqx_json.schema_dir = etc ## plugin.emqx_json.schema_checking = true ## plugin.emqx_json.enable_stats = true ## plugin.emqx_json.eclipse_paho_compatible = false ## plugin.emqx_json.schema_validator = v7 ## plugin.emqx_json.cmd_publish_json = {"payload_format": "json", "qos": 1, "retain": false}
通過以上配置,即可在EMQ X中啟用emqx json插件,享受使用JSON格式消息的便利。
上一篇c 傳遞json數據類型
下一篇c 傳輸json數據