1

投稿してから約1時間後に以下を理解しました。まだあまり例がないので、これを残しました。

FTP サイトからファイルを取得してドロップボックス フォルダーに移動するために、Azure ロジック アプリで新しいコネクタをセットアップしようとしています。

FTPサイトを見つけてからファイルを削除していましたが、ドロップボックスの部分に到達することさえできませんでした。

私はtesting offという名前のテストディレクトリを持っています:ftp: //eek.myftpsite.com/testing/

ここでこのプロセスの基本的なことを理解していないことは明らかです。ftp コネクタとその動作の写真を添付し​​ました。 ここに画像の説明を入力 トリガーのコードは次のとおりです。

   "operation": "TriggerOnFileAvailable",
            "parameters": {
                "triggerState": "@coalesce(triggers()?.outputs?.body?['triggerState'], '')",
                "FolderPath": "testing",
                "FileMask": "CSV*",
                "FileType": "Text"

アクションのコード (この部分は不要であることが判明しました):

   "operation": "GetFile",
            "parameters": {
                "FilePath": "@{triggers().outputs.body.FilePath}",
                "FileType": "Text"
            },
            "authentication": {
                "type": "Raw",
                "scheme": "Zumo",

1 行のテキストを含む CSV_test2.txt という名前のファイルを ftp フォルダーにドロップすると、しばらくすると削除されます - 期待どおりです。トリガー履歴に移動すると、正常に起動したことが示されます。トリガーからの出力も正しいように見えます (実際にはそうでした)。

  "body": {
    "FileName": "CSV_test2.txt",
    "FolderPath": "testing",
    "FilePath": "testing\\CSV_test2.txt",
    "ServerAddress": "eek.myftpsite.com",
    "Content": "This is the data in the test file.",
    "ContentTransferEncoding": "None",
    "triggerState": "CSV_test2.txt"
}

しかし、失敗したと表示されるアクションに進むと (次のステップが間違っていたため、ドロップボックスのようにファイルパスを取るものである必要がありました)。アクションの入力は次のとおりです。

   "operation": "GetFile",
"parameters": {
    "FilePath": "testing\\CSV_test2.txt",
    "FileType": "Text"
},
"apiVersion": "2015-01-14",
"authentication": {
    "scheme": "Zumo",
    "type": "Raw"
}

それは私には正しいようです(いいえ)。出力は次のとおりです。

    },
"body": {
    "status": 404,
    "source": "https://ftpconnectora4cf805ee5114235ad1c43445a153673.azurewebsites.net/file/testing/CSV_test2.txt?FileType=Text",
    "message": "Path does not exist on FTP Server. The remote server returned an error: (550) File unavailable (e.g., file not found, no access)."
}

パスとファイル名をハードコーディングするだけでなく、考えられるすべての組み合わせを試しましたが、すべて役に立ちませんでした。「古い」方法で行うのではなく、新しいプロジェクトでこれを機能させたいと本当に思っています。

どんな提案でも大歓迎です、ジョー

4

1 に答える 1

1

私はそれがどのように機能するかについて誤解していました。FTP コネクタをセットアップして新しいファイルを監視し、別の FTP アクションをセットアップして新しいファイルを取得すると思いました。私の側で少し考えすぎていることがわかりました。

いいえ、次のように出力を直接フィードするだけです。

ここに画像の説明を入力

そのコードは次のとおりです。

 "operation": "UploadFile",
            "parameters": {
                "FilePath": "@{triggers().outputs.body.FilePath}",
                "content": {
                    "Content": "@{triggers().outputs.body.Content}",
                    "ContentTransferEncoding": "None"
                },
                "overwrite": true

かなりクールです...私はそれが他の誰かを助けることを期待して、そこに私の混乱を残しています. これはすべてかなり新しいものですが、非常にエキサイティングです。

ありがとうございました、

ジョー

于 2015-05-30T19:40:27.927 に答える