『瀚思彼岸』» 智能家居技术论坛
标题:
解决nodejs不支持http0.9导致http请求插件HPE_INVALID_CONSTANT问题
[打印本页]
作者:
tplnet
时间:
2024-12-22 18:56
标题:
解决nodejs不支持http0.9导致http请求插件HPE_INVALID_CONSTANT问题
本帖最后由 tplnet 于 2024-12-22 19:00 编辑
因为使用的是中弘VRF,而且因为是米家版本没有启动TCP的端口,所以一直通过miot接入
但在经历了一次断网时HA无法控制以后,因为有以太网口可以用web控制,所以决定插网线ha直连
于是参考
https://bbs.hassbian.com/thread-7865-1-1.html
试图通过web控制页面进行控制,发现其中的"查询网关"和“请求网关”一直报错HPE_INVALID_CONSTANT,但是API手动访问时候报错
感到奇怪所以用cURL请求了一下,发现提示
curl: (1) Received HTTP/0.9 when not allowed
复制代码
所以尝试了下加--http0.9能够访问
于是参考
https://bbs.hassbian.com/thread-20514-1-1.html
,用子进程curl替代了nodered的http请求插件:
1、增加一个function节点
2、设置:
模块名称child_process,导入为childProcess;
3、运行函数:
var buff = childProcess.execSync(`
curl --http0.9 -L -X GET -u admin: '${msg.url}'
`);
var data = buff.toString();
msg.payload = JSON.parse(data);
return msg;
复制代码
4、用它替换
"查询网关"和“请求网关”
5、修正“合成”这个节点中的URL
6、done
作者:
隔壁的王叔叔
时间:
2024-12-22 20:08
高,实在是高
欢迎光临 『瀚思彼岸』» 智能家居技术论坛 (https://bbs.hassbian.com/)
Powered by Discuz! X3.5