0

0

こんにちは、みんな、

私は奇妙な問題に遭遇しています。以下のコードを使用して、Azure BLOB ストレージからファイルをダウンロードしています。

CloudBlobContainer container = AzureAccountManagement.currentBlobClient.GetContainerReference(containerName);
        CloudBlob blob = container.GetBlobReference(blobName);

        BlobRequestOptions options = new BlobRequestOptions();
        options.Timeout = new TimeSpan(0, TiMEOUT, 0);

        try
        {
            blob.DownloadToFile(localPath, blob.Name), options);
        }

上記の AzureAccountManagement で、正しい接続文字列を構成しました。

上記のコードを使用して、拡張子が .mdb のファイルをダウンロードすると、次のような例外が発生します。


Microsoft.WindowsAzure.StorageClient.StorageServerException がキャッチされました

Message=Proxy Error (要求は HTTP フィルターによって拒否されました。Forefront TMG 管理者に連絡してください。)

内部例外:

「リモート サーバーがエラーを返しました: (502) ゲートウェイが正しくありません。」


その他の試み:

  1. 他のファイル (.xml/html/txt) をダウンロードしようとすると、コードはそれらを正常にダウンロードします。

  2. Azure Storage Explorer を使用してそれらをダウンロードしました.mdb ファイル -- 同じエラーで失敗しました。他のファイル タイプ、成功。

  3. 他のマシンでテストしましたが、実際には私のマシンと同じ構成で、.mdb ファイルと他のファイル タイプの両方を正常にダウンロードしました。

したがって、私のマシンには HTTP フィルターまたはセキュリティの問題があると思いますが、その解決方法がわかりません。皆さんも同様の問題に遭遇しましたか? もしそうなら、私はあなたから解決策を得ることを願っています.

私の作業マシンは Windows 7/64 ビット/VS 2010 SP1/Azure SDK 1.6 です。情報が有用である場合。

4

1 に答える 1

2

ファイアウォールの内側にいるようです。

このエラー

リクエストはHTTPフィルターによって拒否されました。ForefrontTMG管理者に連絡してください。)。

InnerException:

「リモートサーバーがエラーを返しました:(502)不正なゲートウェイ。」

は実際にはファイアウォールから提供されています。この場合はTMGです。これは、リクエストがファイアウォールを離れることを防止されているため、blobストレージエンドポイントに到達することはないということです。

ネットワーク管理者とチャットして、ファイアウォールを通過するトラフィックを追跡できるかどうかを確認します。このトラフィックを通過させるには、スイッチを切り替える必要がある場合があります。

于 2012-12-04T22:24:42.423 に答える