You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

通过POST调用向Azure Logic Apps提交表单数据的问题咨询

解决Azure Logic Apps中POST表单参数无法访问的问题

我之前也碰到过一模一样的问题——当你通过POST请求给Logic Apps提交参数后,后续操作里死活找不到这些字段,核心原因大多是触发器没有正确识别请求的结构,也就是没配置对应的JSON Schema来解析请求体。下面一步步给你讲怎么搞定:

1. 先确保请求用JSON格式提交

首先,你的POST请求要把参数放在JSON格式的请求体里,并且请求头的Content-Type必须设为application/json。如果用的是form-data或者x-www-form-urlencoded,Logic Apps的处理逻辑会不一样,但既然你要用到JSON Schema,咱们就统一用JSON格式的请求来配置。

2. 编写对应参数的JSON Schema

在Logic Apps的「当收到HTTP请求时」触发器里,你需要填入请求体的JSON Schema,这样Logic Apps才能自动解析出FileName和FileContent这两个参数,让它们出现在后续操作的动态内容面板里。

这里是针对你的两个参数写的专属Schema:

{
  "type": "object",
  "properties": {
    "FileName": {
      "type": "string"
    },
    "FileContent": {
      "type": "string"
    }
  },
  "required": ["FileName", "FileContent"]
}

简单解释下细节:

  • type: "object":表示你的请求体是一个标准JSON对象
  • properties里定义了两个字段:FileName和FileContent,都设为字符串类型(如果你的FileContent是Base64编码的文件内容,这个类型刚好适配)
  • required数组是可选配置:如果你希望这两个参数必须存在才能触发流程,就保留;如果允许某一个参数可选,可以把它从数组里移除,甚至直接删掉整个required行。

3. 在Logic Apps中配置触发器

打开你的Logic Apps流程,找到「当收到HTTP请求时」触发器:

  • 把上面的JSON Schema粘贴到「请求正文JSON Schema」输入框里
  • 保存流程,这时触发器会自动生成对应的动态内容字段——你在后续操作(比如Compose、Create File等)里,就能直接从动态内容面板里选中FileName和FileContent了。

4. 测试请求的示例写法

比如用curl发送请求的话,命令大概是这样:

curl -X POST \
  https://your-logic-app-endpoint.azurewebsites.net/api/your-trigger-path \
  -H 'Content-Type: application/json' \
  -d '{
    "FileName": "test-document.pdf",
    "FileContent": "JVBERi0xLjMKJcfsj6IKNSAwIG9iago8PC9MZW5ndGggNiAwIFIvRmlsdGVyIC9GbGF0ZURlY29kZT4+CnN0cmVhbQp4nE2NuwoCQQxF+/m..."
  }'

这里的FileContent是Base64编码后的文件内容,你可以用在线工具或者本地脚本把文件转成Base64再填进去。

快速验证参数是否可访问

你可以在触发器后面加一个「Compose」操作,把FileName和FileContent拖到Compose的输入框里,运行流程后查看Compose的输出,如果能正确显示你提交的参数,就说明配置完全成功了。

内容的提问来源于stack exchange,提问作者Rahul Chavan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 09:58:42