通过node-red

时间:2016-02-24 18:12:17

标签: python node.js websocket node-red

我正在尝试从我的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我按如下方式设置了我的流程:

Node-Red Flow

然而,当我同时运行它们时,我的python程序说它正在发送消息,但是节点红色控制台为msg值返回null。

1 个答案:

答案 0 :(得分:0)

请检查您的settings.js文件 - 您是否为httpRoothttpNodeRoot定义了网址前缀?

例如,在我的项目中,当我添加一个新的websocket配置节点时,会显示以下信息框:

  

默认情况下,有效负载将包含要通过或从中接收的数据   WebSocket的。侦听器可以配置为发送或接收整个消息   object作为JSON格式的字符串。此路径将相对于/red

如果是这样,我相信您必须修改python代码中的url,如下所示: ws.connect("ws://localhost:1880/red/ws/example")

替换你的前缀,当然......