gpt4 book ai didi

node.js - Node -RED + DB2 - 消息 : string[18] "No response object"

转载 作者:太空宇宙 更新时间:2023-11-03 22:50:24 27 4
gpt4 key购买 nike

所以,我是 Node-RED 的初学者,需要通过流程使用 DB2 查询创建一个简单的 API。我正在使用node-red-contrib-db2来实现这一点。问题是,我设法将结果发送到调试器 Node 的多个有效负载,由时间戳或 HTTP 请求触发。但是,我无法在 HTTP Reply 上获得这些结果,也找不到原因。是 db2 插件的问题还是我的问题?

enter image description here

导出的 Node 如下:

[{"id":"96197abb.fd4098","type":"http in","z":"b4aa8db5.217028","name":"","url":"/wastes","method":"get","upload":false,"swaggerDoc":"","x":150,"y":140,"wires":[["9affb306.caf7e"]]},{"id":"bda39d37.edb418","type":"http response","z":"b4aa8db5.217028","name":"","statusCode":"200","headers":{},"x":940,"y":100,"wires":[]},{"id":"41708443.e4670c","type":"inject","z":"b4aa8db5.217028","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":220,"y":40,"wires":[["22a6e217.ead65e"]]},{"id":"9d1e6783.eb246","type":"ibmdb","z":"b4aa8db5.217028","mydb":"3a218407.1cca74","name":"IOCDATA","x":560,"y":40,"wires":[["80e51c1b.23b378"],[]]},{"id":"80e51c1b.23b378","type":"debug","z":"b4aa8db5.217028","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":730,"y":40,"wires":[]},{"id":"22a6e217.ead65e","type":"function","z":"b4aa8db5.217028","name":"SQL Query","func":"msg.database = \"iocdata\";\nmsg.payload = \"select * from viseu.waste_view\";\nreturn msg;","outputs":1,"noerr":0,"x":390,"y":40,"wires":[["9d1e6783.eb246"]]},{"id":"4a6bd014.f39868","type":"ibmdb","z":"b4aa8db5.217028","mydb":"3a218407.1cca74","name":"IOCDATA","x":500,"y":140,"wires":[["bda39d37.edb418","74e28d3e.039be4"],[]]},{"id":"9affb306.caf7e","type":"function","z":"b4aa8db5.217028","name":"SQL Query","func":"msg.database = \"iocdata\";\nmsg.payload = \"select * from viseu.waste_view where id = 1\";\nreturn msg;","outputs":1,"noerr":0,"x":330,"y":140,"wires":[["4a6bd014.f39868"]]},{"id":"74e28d3e.039be4","type":"debug","z":"b4aa8db5.217028","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":950,"y":180,"wires":[]},{"id":"3a218407.1cca74","type":"IbmDBdatabase","z":"","host":"10.102.0.62","port":"50002","db":"iocdata"}]

最佳答案

这是您正在使用的 ibmdb Node 的问题 - 它在发送结果时没有重用收到的消息。这意味着当消息到达 HTTP Response Node 时,HTTP In Node 提供的 msg.reqmsg.res 属性尚未在消息上设置。这意味着响应 Node 不响应什么请求。

要解决此问题,一种并不理想的方法是使用 ibmdb Node 之前的 Change Node 将 msg.req 和 msg.res 存储在流上下文中,然后复制它们返回到 ibmdb Node 之后的 msg 上。这并不理想,因为它一次只能处理一个请求。

最好针对 ibmdb Node 提出问题。

关于node.js - Node -RED + DB2 - 消息 : string[18] "No response object",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48709136/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com