【发布时间】:2019-06-10 05:00:02
【问题描述】:
我正在创建一个 Azure 逻辑应用程序,它将在 FTP 服务器上创建一个新文件(来自大约 5KB 的 HTTP 正文内容)。
这里是 FTP 创建文件的代码 sn -p:
{
"inputs": {
"host": {
"connection": {
"name": "@parameters('$connections')['ftp']['connectionId']"
}
},
"method": "post",
"body": "@body('Provider_Post')",
"path": "/datasets/default/files",
"queries": {
"folderPath": "/",
"name": "filename_@{utcNow()}.xml",
"queryParametersSingleEncoded": true
},
"authentication": "@parameters('$authentication')"
},
"runtimeConfiguration": {
"contentTransfer": {
"transferMode": "Chunked"
}
}
}
此步骤需要很长时间(32 分钟),然后失败并出现以下错误:
MaxRequestCountReached. The maximum number of requests allowed '1000' was not sufficient to upload the entire content. Uploaded content length: '2378'. Total content length: '4877'.
文件出现在 FTP 服务器上,但距离文件结尾只有 2380 字节。
此错误是什么意思以及如何解决? 5KB 不应该是太多的数据。这与 FTP 服务器有关吗?我可以毫无问题地使用 FileZilla 发送文件。
我什至对此进行了测试,因此我创建了另一个步骤(在失败之前),它将 HTTP 内容状态代码(因此,只是“200”)发送到一个新文件,并在一秒钟内成功写入。
【问题讨论】:
-
您的跑步历史详细信息是什么? HTTP 正文内容长度是否太长?并且您的文件名带有@{utcNow()},不允许创建此默认格式名称。所以你可以试试 test_@{utcNow('yyyyMMddHHmmss')}.xml
-
运行历史详细信息是什么意思?错误消息在那里,并且提到了持续时间。步长为 5637 字节。文件名不是问题,因为我使用相同类型的文件名创建了较小的文件。
-
5KB 无法被限制。你也设置了Allow chunking。
-
启用分块。它也不适用于允许分块。
-
并不是我建议将其作为一个完整的解决方案,但是您可以使用 SFTP 上传连接进行测试吗?
标签: azure ftp azure-logic-apps