IIS 5.1(ローカルホスト上)を実行しているローカルシステムに2つのWebサイトをセットアップしています。あるWebサイトを別のWebサイトから呼び出しています。ASP.NET、C#2.0を使用しています。
public static String executeWebRequest(string url, Boolean esmRequest)
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
UTF8Encoding encoding = new UTF8Encoding();
Stream requestStream = null;
HttpWebResponse response = null;
StreamReader responseStream = null;
string responseString;
try
{
//post request
request.Method = "POST";
if (esmRequest)
{
//request.UseDefaultCredentials = true;
request.Credentials = new NetworkCredential(ConfigurationManager.AppSettings["ESMServerUserName"], ConfigurationManager.AppSettings["ESMServerPassword"]);
}
else
{
//request.UseDefaultCredentials = true;
request.Credentials = new NetworkCredential(ConfigurationManager.AppSettings["ESMServerUserName"], ConfigurationManager.AppSettings["ESMServerPassword"]);
}
requestStream = request.GetRequestStream();
requestStream.Write(new byte[0], 0, 0);
requestStream.Close();
//get response
response = (HttpWebResponse)request.GetResponse();
responseStream = new StreamReader(response.GetResponseStream(), encoding);
responseString = responseStream.ReadToEnd();
}
catch (Exception ex)
{
throw ex;
}
finally
{
if (requestStream != null)
{
requestStream.Close();
}
if (response != null)
{
response.Close();
}
if (responseStream != null)
{
responseStream.Close();
}
}
return responseString;
}
}
このコードを実行して、401HTTPステータスコードを取得します。1エラーですが、同じURLをブラウザに貼り付けると、完全に実行されます。
http://support.microsoft.com/kb/89686/en-usを使用してDisableLoopbackCheckを既に有効にしています
どうすればこれを解決できますか?