基本認証 (ユーザー名/パスワード) を使用する Web サイトがあります。
次のコードが機能しないのはなぜですか? 実行すると、Web アプリケーションはログイン コントローラーに移動しますが、資格情報を入力しているため、既に認証されているはずです。つまり、認証プロセスを自動化するために、.NET で winforms HttpWebRequest を確認する方法を確認しようとしています。NetworkCredential がこれを行う必要がある .net クラスであると想定していますか? または、.NET では、自分で実装しなければならない手動の 2 段階プロセスがあると予想されますか?
コードは次のとおりです。
// Create a new webrequest to the mentioned URL.
var uri = new Uri("http://10.1.1.102:3000/download/sunset");
var myWebRequest = (HttpWebRequest)WebRequest.Create(uri);
myWebRequest.PreAuthenticate=true;
var networkCredential=new NetworkCredential("test", "asdfasdf");
myWebRequest.Credentials=networkCredential;
var myWebResponse = (HttpWebResponse)myWebRequest.GetResponse();
Console.Out.WriteLine("STATUS = " + myWebResponse.StatusCode);
var stream = myWebResponse.GetResponseStream();
var reader = new StreamReader(stream);
string text_read = reader.ReadToEnd();
Console.WriteLine(text_read);
DisplayHtml(text_read);
reader.Close();
stream.Close();
myWebResponse.Close();
ありがとう