2011-01-05 13 views
1

WebClient.DownloadDataから画像を開くことができますが、Webブラウザで開くことができるいくつかのURLでは、WebClient.DownloadData経由で使用すると画像のバイト配列を取得できません。WebClient.DownloadDataは404ファイルが見つかりません。この原因は何ですか?

ブラウザで見ることができれば、なぜhttp 404ファイルが見つからないのですか?

WebException was unhandled. 

The remote server returned an error: (404) Not Found. 

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

+1

404を引き上げるURLの例を挙げることができますか。 –

答えて

2

もしURLが有効であれば、おそらくいくつかの抗浸出機構がある。リファラーまたはクッキーをチェックする。

Fidlerのようなものを使用して、Webブラウザのリクエストを検査し、ダウンロード要求が同じであることを確認できます。

+0

クッキーを消去しても動作しませんでしたが、設定権限を変更する必要がありますIISで? – Sharpeye500

+0

私は、WebClient.DownloadData経由でアクセスしたときに画像のサイズ制限があるかどうかわかりません。他の短い画像を試したときに長さを読み取ることができました。 – Sharpeye500

+0

許可は通常、異なるHTTPコードです。 403. –

0

リクエストがブラウザのものと同じ/類似していることを確認してください。

最も簡単な方法は、Fiddlerを使用して、ブラウザとアプリケーションから要求を実行するよりも、すべてのプロセスの要求を記録するように設定することです。何が原因であるかを見る2つのリクエストのURL、メソッド、ヘッダーの違いを探します。 (FiddlerでトレースされたHTTPリクエストを取得するためにWebリクエストにローカルプロキシを使用するようにプログラムを設定する必要が多くあります)。

関連する問題