使用节点red和python节点在HTTP RESPONSE上输入TypeError

时间:2018-03-21 16:31:01

标签: python node.js python-3.x node-red

(nodered的新功能 - 感谢任何帮助。)

使用node-red@0.18.3和node-red-contrib-python3-function@0.0.4在mac上运行。

使用PyTest运行时,我从HTTP响应节点收到错误

"{"pyTotal": "18"}"

调试显示来自PyTest的正确有效负载输出

HTTP Request -> jsTest -> json -> HTTP Response 
HTTP Request -> PyTest -> json -> HTTP Response 

我也跟踪过这个消息;来自计算器的js和py输出之间的msg结构没有区别。

通过HTTP请求添加计算器的简单流程:     http://127.0.0.1:1880/add?x=8&y=10

import json    
args = msg['req']['query']
t = int(args['x']) + int(args['y'])
# Return json object
r = json.dumps({ "pyTotal" : str(t)})
# Return json string
r = '{ "pytotal" : "%s" }' % str(t)
msg['payload'] = r
return msg

这在计算器使用jsTest时有效。 使用PyTest与TypeError失败。 所有其他节点都是相同的。卡住! (我试过设置msg ['statusCode'] ='200' - >没有变化)

PyTest

var t = 0;
var r = "";

args = msg.req.query
t = parseInt(args.x) + parseInt(args.y);
r = "{ \"total\" : \"" + t + "\" }";
msg.payload = r;
return msg

jsTest

{{1}}

enter image description here

0 个答案:

没有答案