FTP-приложение Azure Logic FTP не удается создать файл с MaxRequestCountReached - PullRequest
1 голос
/ 10 июня 2019

Я создаю приложение логики Azure, которое создаст новый файл (из содержимого тела HTTP размером около 5 КБ) на FTP-сервере.

Вот фрагмент кода создания файла FTP:

{
    "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 байтов от конца файла.

Что означает эта ошибка и как ее исправить? 5 КБ не должно быть слишком много данных. Это что-то о FTP-сервере? Я могу отправить файл с FileZilla без проблем.

Я даже протестировал это, чтобы создать еще один шаг (до сбойного), который будет отправлять HTTP-контент statusCode (то есть просто «200») в новый файл, и он успешно записывает его за одну секунду.

1 Ответ

1 голос
/ 10 июня 2019

Причиной этого неправильного поведения было то, что я отключил двоичный транспорт в настройках соединения API ftp.

Когда я установил флажок двоичного транспорта, он записал файл в считанные секунды.

...