接口操作-表单参数处理
使用 POST 请求发送表单数据
接口路由访问规则参考 接口操作-创建接口
问题背景
使用 POST 请求发送表单数据
解决方案
使用 接口定义 节点监听 POST 请求,并将 Content-Type 设置为 application/x-www-form-urlencoded。通过 msg.payload 对象的属性来访问表单数据。
示例
该流程包含三个节点:
接口定义节点: 配置为监听 POST 请求到 /public/hello-form。模板转化节点: 使用 Mustache 语法生成 HTML 响应。它通过{{ payload.name }}访问 msg.payload 中 name 属性的值。接口响应节点: 将 Template 节点生成的 HTML 作为响应发送回客户端。
示例JSON
[{"id":"5b98a8ac.a46758","type":"http in","z":"65b5dbf44a0ca401","name":"","url":"/hello-form","method":"post","upload":false,"swaggerDoc":"","advancedoptions":true,"apiAuth":"public","x":260,"y":2200,"wires":[["bba61009.4459f"]]},{"id":"bba61009.4459f","type":"template","z":"65b5dbf44a0ca401","name":"page","field":"payload","fieldType":"msg","format":"handlebars","syntax":"mustache","template":"<html>\n <head></head>\n <body>\n <h1>Hello {{ payload.name }}!</h1>\n </body>\n</html>","x":490,"y":2200,"wires":[["ddfd17998da9e87b"]]},{"id":"ddfd17998da9e87b","type":"http response","z":"65b5dbf44a0ca401","name":"接口响应","statusCode":"","headers":{},"commonTemplate":false,"responseCode":0,"responseCodeType":"num","responseData":"payload","responseDataType":"msg","responseMsg":"success","responseMsgType":"str","x":700,"y":2200,"wires":[]}]
运行结果
使用 apifox 发送post 请求访问 /public/hello-form: https://192.168.108.251:8080/prod-api/noco-instance/stotest/public/hello-form

当 接口定义 节点收到此类请求时,它会解析请求体,并将表单数据作为 msg.payload 的属性提供:
{
"name": "Nick"
}
