环境信息
- EMQ X 版本:4.3.5
- 操作系统及版本:ubuntu
- 其他
问题描述
设置规则如下
web端接收消息为空,不知道是不是body这里也要设置,文档好像没有说明这里
使用 POST
方法向 Web 服务发送数据时,若未详细设置 body ,将使用规则引擎输出的所有字段键值组成json字符串进行发送。
本地测试可以正常发送带有 body 的 HTTP 请求
您好,我现在emq配置的body内是留空的,http端使用php的$_POST变量接收(EMQ的method设置的也是POST),使用http请求工具发送post到http服务可以正常写入数据库,但是EMQ发起的http携带的POST参数确实是空的,有请求但是没有参数,从nginx日志看确实有请求,但是比较小,应该是没有携带请求参数,所以怀疑是EMQ设置的问题
使用抓包工具检查下是否有 HTTP 请求发出?
我刚刚的截图中是 Wireshark 抓到的 HTTP 请求。
稍等,我测试下回复您
刚刚抓包看了下,确实是有数据的,我再研究下
另外可以检查下 http 请求工具发送的 Headers 和 EMQ X 中配置的 Headers 有无差别。
有可能是 php server 对 Headers 作了检查。可以尝试将 EMQ X 中的 Headers 配置成与http请求工具中一样的来排除这部份影响。
我也遇到这个问题 但是不知道怎么解决