Добрый день, есть необходимость управлять контроллером через HTTP. Проверил, все работает. Но, я могу отправить полезную нагрузку на настроенный топик в блоке WB out.
Могу ли я топик передать в ссылке? Уже пытался это сделать, но не работает. Вот ссылка на которую я должен перейти чтобы передать данные на топик.
http://192.168.43.13:1880/mqttp?topic=Test/test1&message=0
Полезная нагрузка передается, а сам топик нет.
В блоке change меняю данные для блока WB out.
Добрый день. Ну есть же отладка, зачем что-то предполагать?
Флоу:
[
{
"id": "44739eab791133a7",
"type": "tab",
"label": "Поток 1",
"disabled": false,
"info": "",
"env": []
},
{
"id": "59ff2a1.fa600d4",
"type": "http in",
"z": "44739eab791133a7",
"name": "",
"url": "/mqttp",
"method": "get",
"upload": false,
"swaggerDoc": "",
"x": 380,
"y": 220,
"wires": [
[
"54c1e70d.ab3e18",
"b96986a106e96dd4",
"f02536c2ffb8cd03"
]
]
},
{
"id": "54c1e70d.ab3e18",
"type": "template",
"z": "44739eab791133a7",
"name": "page",
"field": "payload",
"fieldType": "msg",
"format": "handlebars",
"syntax": "mustache",
"template": "<html>\n <head></head>\n <body>\n <h1>Hello World!</h1>\n </head>\n\n <title>Response Named Parameters</title>\n Page found Named Parameters {{req.params.name}}</h1>\n <BR>\n topic={{req.query.top}}\n <BR>\n message={{req.query.message}}\n </body>\n</html>",
"x": 590,
"y": 220,
"wires": [
[
"266c286f.d993d8"
]
]
},
{
"id": "266c286f.d993d8",
"type": "http response",
"z": "44739eab791133a7",
"name": "",
"statusCode": "",
"headers": {},
"x": 810,
"y": 220,
"wires": []
},
{
"id": "b96986a106e96dd4",
"type": "change",
"z": "44739eab791133a7",
"name": "Extract",
"rules": [
{
"t": "set",
"p": "payload.topic",
"pt": "msg",
"to": "req.query.top",
"tot": "msg"
},
{
"t": "set",
"p": "payload.message",
"pt": "msg",
"to": "req.query.message",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 600,
"y": 340,
"wires": [
[
"f2c0c5f0e541226f"
]
]
},
{
"id": "f2c0c5f0e541226f",
"type": "debug",
"z": "44739eab791133a7",
"name": "После",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "payload",
"targetType": "msg",
"statusVal": "",
"statusType": "auto",
"x": 790,
"y": 340,
"wires": []
},
{
"id": "f02536c2ffb8cd03",
"type": "debug",
"z": "44739eab791133a7",
"name": "До",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 590,
"y": 420,
"wires": []
}
]
Ключевой момент - обращаться на до не к “payload.topic” а к “req.query.topic”
@sansa26 Здравствуйте! Получилось ли решить проблему?
Да, все получилось, спасибо!
Эта тема была автоматически закрыта через 7 дней после последнего ответа. В ней больше нельзя отвечать.