[ad_1]
Azure BLOB にアップロードされたファイルをオンプレミスのファイル システムにコピーするための Azure BLOB トリガーを作成しようとしています。 誰かが同じ手順を提供してもらえますか?
私が試したこと:
BLOB トリガーを作成し、その出力パラメーターを外部ファイル (プレビュー) にバインドし、ファイル システム API を選択しました。 表示名、ルートフォルダー、ユーザー名、パスワードを要求されます。 ここでは何が行われるのでしょうか?また、Azure をマシンのファイル システムに接続するにはどうすればよいですか?
This is my function.json file. { "bindings": [ { "name": "myBlob", "type": "blobTrigger", "direction": "in", "path": "input/{name}", "connection": "connection_Name" }, { "type": "apiHubFile", "name": "outputFile", "path": "outout/{name}", "connection": "file_system_connection_name", "direction": "out", "typeProperties": { "host": "HostName", "userid": "userid", "password": "userpassword", "gatewayName": "gatewayName" } } ], "disabled": false } This is my run.csx file. public static void Run(Stream myBlob, string name, TraceWriter log,Stream outputFile) { myBlob.CopyTo(outputFile); }
解決策 1
この検索: Azure Blob Storage からファイルをダウンロードする – Google[^] この答えが見つかりました: Azure Storage からのファイルのアップロードとダウンロード – WebApps[^] – スクリーンショットとサンプル ソース コードを含む完全なプロセスのステップバイステップ ガイド!
アップデート: BLOB トリガー… この検索: Azure BLOB トリガー関数の作成方法 – Google 検索[^] このステップバイステップガイドを見つけました。 BLOB ストレージによってトリガーされる Azure での関数の作成 | Microsoft ドキュメント[^]
Google検索を使ったリサーチが鍵! やってみてください、それは難しくありません…
解決策 2
ShareGate または Gs Richcopy 360 を直接使用して、Azure BLOB からオンプレミス、またはオンプレミスから Azure BLOB にファイルを送信できますが、一方で、C# を使用して次の手順を実行することもできます。
– Visual Studio で Azure Function App プロジェクトを作成します。
– Azure Blob トリガーを使用して、新しい関数をプロジェクトに追加します。
– Azure.Storage.Blobs NuGet パッケージをプロジェクトにインストールします。
-次のコードを関数に追加します。
using Microsoft.Azure.WebJobs; using Microsoft.Extensions.Logging; using Azure.Storage.Blobs; public static void Run( [BlobTrigger("container-name/{name}", Connection = "AzureWebJobsStorage")] BlobClient blobClient, string name, ILogger log) { log.LogInformation($"C# Blob trigger function processed blob\n Name:{name} \n URI:{blobClient.Uri}"); // Replace the file path with the path to the on-premise file system string filePath = @"C:\path\to\destination\file"; // Download the blob to the file system blobClient.DownloadTo(filePath); }
– BlobTrigger 属性の “container-name” プレースホルダーを、監視する Azure Blob Storage コンテナーの名前に置き換えます。
– filePath 変数のファイル パスを、オンプレミス ファイル システム上の宛先ファイルへのパスに置き換えます。
-関数アプリを Azure にデプロイし、関数アプリの[アプリケーション設定]セクションで AzureWebJobsStorage の接続文字列を構成します。
指定されたコンテナーに新しい BLOB が追加されると、Azure Blob トリガーが関数を起動し、オンプレミス ファイル システム上の指定されたファイル パスに BLOB をダウンロードします。
[ad_2]
コメント