我正在尝试从我的python程序中获取信息并在网页上更新实时。
我正在尝试使用node-red并通过Web套接字进行通信。
我的python程序如下:
#!/usr/bin/python
import time
import websocket
ws = websocket.WebSocket();
ws.connect("ws://localhost:1880/ws/example")
count = 0;
while(count < 50):
print "Sending 'Hello, World'..."
ws.send("Hello, World")
print "Sent"
time.sleep(5)
count = count + 1
ws.close()
使用Node-red我按如下方式设置了我的流程:
然而,当我同时运行它们时,我的python程序说它正在发送消息,但是节点红色控制台为msg值返回null。
答案 0 :(得分:0)
请检查您的settings.js
文件 - 您是否为httpRoot
或httpNodeRoot
定义了网址前缀?
例如,在我的项目中,当我添加一个新的websocket配置节点时,会显示以下信息框:
默认情况下,有效负载将包含要通过或从中接收的数据 WebSocket的。侦听器可以配置为发送或接收整个消息 object作为JSON格式的字符串。此路径将相对于
/red
。
如果是这样,我相信您必须修改python代码中的url,如下所示:
ws.connect("ws://localhost:1880/red/ws/example")
替换你的前缀,当然......