Подключение Python к веб-странице через node-red

Я пытаюсь получить информацию из моей программы Python и обновить ее в реальном времени на веб-странице.

Я пытаюсь использовать node-red и общаться через веб-сокеты.

Моя программа на 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 сообщает, что отправляет сообщение, однако красная консоль узла возвращает значение null для значения msg.


person UniqueName    schedule 24.02.2016    source источник
comment
что есть в ws / example?   -  person Padraic Cunningham    schedule 24.02.2016
comment
Какой пакет вы используете, который предоставляет веб-сокет?   -  person Kolban    schedule 26.02.2016


Ответы (1)


Проверьте свой settings.js файл - определен ли префикс URL-адреса для httpRoot или httpNodeRoot?

Например, в моем проекте, когда я добавляю новый узел конфигурации websocket, отображается это информационное окно:

По умолчанию полезная нагрузка будет содержать данные, которые должны быть отправлены или получены из веб-сокета. Прослушиватель можно настроить для отправки или получения всего объекта сообщения в виде строки в формате JSON. Этот путь будет относительно /red.

Если это так, я считаю, что вам придется изменить URL-адрес в вашем коде Python, например: ws.connect("ws://localhost:1880/red/ws/example")

подставив, конечно, свой префикс ...

person SteveR    schedule 24.01.2018