http api 规则添加的资源字段不人性化

环境信息

  • EMQ X 版本:4.3.5
  • 操作系统及版本:
  • 其他

问题描述

API添加规则的时候,需要添加资源ID,然而API提供的资源id的参数名称为$resource,但是很多语言不支持$开头的变量,需要额外转换,为啥不直接用resource_id这样的字段命名?

配置文件及日志

这个是资源添加的http api,没太理解你描述的问题,如果可以,麻烦举例说明下,谢谢


这是添加规则的报文,可以看到这个框出来的字段$resource是$开头的,其他字段都是正常的,而很多语言是不支持$开头的变量的,我如果要调用添加规则的API就必须要特殊处理下$开头的字段
image
不知道这里变量用$开头的意义是什么

为什么使用’$'开头,这个我等下可以去咨询下其他同事
但是报文中的名称和你代码中的变量名、字段名没有任何关联性呀
你的代码看起来是C#吧?C#下一般使用Newtonsoft.Json库,这个库可以高度自定义序列化、反序列化,可以使用多种方式灵活的自定义class/struct 的字段 <-> Json 字段间的映射,所以也不存在你说的问题。

是的,虽然可以解决问题,但是就是麻烦了点 :joy:

同事说是历史原因。
你还是用Json库来自己控制序列化、反序列化时的字段名称映射吧

好的