如何使用 node-red 将 json 数据发送到烧瓶后端
How to send json data to flask backend using node-red
我正在尝试将 node-red 的一些输出作为 JSON 对象发送到使用 Flask 的后端。在后端,我的目标是将 JSON 数据转换为 .dot
格式并在本地保存文件。我刚开始使用 node-red,但不确定如何实现?后端必须在 python.
使用 Flask 的 python 代码:
from flask import Flask,request
app = Flask(__name__)
@app.route('/',methods=['POST','GET'])
def hello_world():
print (request.is_json)
content = request.get_json()
print (content)
return 'JSON posted'
我收到的红色节点控制台错误是
15 Apr 15:39:38 - [info] [debug:7bffeac1.688574]
{ _msgid: 'af3f4f9d.7072d', topic: '', payload: 'Invalid Date' }
15 Apr 15:45:13 - [info] [debug:7bffeac1.688574]
{ _msgid: 'e827f152.f9194', topic: '', payload: 'Invalid Date' }
15 Apr 15:48:55 - [info] [debug:7bffeac1.688574]
{ _msgid: '53e5ee2d.3b599', topic: '', payload: 'Invalid Date' }
python终端上的错误:
127.0.0.1 - - [15/Apr/2019 15:57:42] "GET / HTTP/1.1" 500 -
None False
让我们分解问题。
取流中的前 2 个节点。
Inject
节点设置为时间戳模式进入JSON
节点。
这输出一个字符串:
15/04/2019, 08:46:01 node: e5ffc8f6.f177a8
msg.payload : string[13]
"1555314361418"
这不是一个 JSON 对象(如果尝试这个而不是仅仅将输入数字转换为字符串,以前版本的 Node-RED 实际上会抛出错误)。如果输入中没有 one 的字符串表示形式,JSON
节点将不会创建 JSON 结构。
如果你想注入一个 JSON 对象到你的 HTTP-Request
节点你应该改变注入节点实际注入一个 JSON 对象并移除 JSON 节点.
我正在尝试将 node-red 的一些输出作为 JSON 对象发送到使用 Flask 的后端。在后端,我的目标是将 JSON 数据转换为 .dot
格式并在本地保存文件。我刚开始使用 node-red,但不确定如何实现?后端必须在 python.
使用 Flask 的 python 代码:
from flask import Flask,request
app = Flask(__name__)
@app.route('/',methods=['POST','GET'])
def hello_world():
print (request.is_json)
content = request.get_json()
print (content)
return 'JSON posted'
我收到的红色节点控制台错误是
15 Apr 15:39:38 - [info] [debug:7bffeac1.688574]
{ _msgid: 'af3f4f9d.7072d', topic: '', payload: 'Invalid Date' }
15 Apr 15:45:13 - [info] [debug:7bffeac1.688574]
{ _msgid: 'e827f152.f9194', topic: '', payload: 'Invalid Date' }
15 Apr 15:48:55 - [info] [debug:7bffeac1.688574]
{ _msgid: '53e5ee2d.3b599', topic: '', payload: 'Invalid Date' }
python终端上的错误:
127.0.0.1 - - [15/Apr/2019 15:57:42] "GET / HTTP/1.1" 500 -
None False
让我们分解问题。
取流中的前 2 个节点。
Inject
节点设置为时间戳模式进入JSON
节点。
这输出一个字符串:
15/04/2019, 08:46:01 node: e5ffc8f6.f177a8
msg.payload : string[13]
"1555314361418"
这不是一个 JSON 对象(如果尝试这个而不是仅仅将输入数字转换为字符串,以前版本的 Node-RED 实际上会抛出错误)。如果输入中没有 one 的字符串表示形式,JSON
节点将不会创建 JSON 结构。
如果你想注入一个 JSON 对象到你的 HTTP-Request
节点你应该改变注入节点实际注入一个 JSON 对象并移除 JSON 节点.