###実現したいこと
ローカル内にある機器の管理画面に自動でログインするプログラムを作成し、一定時間ごとにログ(.wri)をダウンロードしたいと考えています。
外部公開する用のページではない為だと思いますが、HTTPS(自己証明書使用)が使用されており
Digest認証がログイン時に使用されています。
発生している問題・エラーメッセージ
wc.DownloadFile("https://192.168.1.100/report_.wri", @"C:\inetpub\ftproot\1.wri");
上記箇所で下記のエラーが表示されます。
ログインが正常に出来ていれば、このURLは間違いなく存在しているのですが、原因・確認方法が分かっていません。
ダイジェスト認証が出来ていないのかと思っていますが、確認方法や間違ってる記述等ありましたら回答お願いいたします。
System.Net.WebException: 'リモート サーバーがエラーを返しました: (404) 見つかりません'
該当のソースコード
C#
1{ 2ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(OnRemoteCertificateValidationCallback); 3ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12; 4 5 6CredentialCache cache = new CredentialCache(); 7Uri prefix = new Uri("https://192.168.1.100"); 8cache.Add(prefix, "Digest", new NetworkCredential("admin", "password")); 9 10WebClient wc = new WebClient(); 11wc.Credentials = cache; 12wc.DownloadFile("https://192.168.1.100/report_.wri", @"C:\inetpub\ftproot\1.wri"); 13wc.Dispose(); 14 15} 16private bool OnRemoteCertificateValidationCallback( 17 Object sender, 18 X509Certificate certificate, 19 X509Chain chain, 20 SslPolicyErrors sslPolicyErrors) 21 { 22 // 信用したことにする 23 return true; 24 }
流れ
①【https://192.168.1.100】にDigect認証
②認証情報を継承して【https://192.168.1.100/report_.wri】のファイルをダウンロード
補足情報(FW/ツールのバージョンなど)
OS:Windows 7
ツール:visual studio 2017
【http://neue.cc/2009/12/17_230.html】
このサイトを参考に同じように記述してみましたが、
System.Net.WebException: 'リモート サーバーがエラーを返しました: (400) 要求が不適切です'
となります。
回答1件
あなたの回答
tips
プレビュー