2012-01-26 25 views
4

プロキシのリストをループし、テストしていることを確認し、ユーザー名とパスワードが不要であることをテストします。テストプロキシで認証が​​必要かどうかを確認します

ただし、テストが正しく機能していないようです。たとえば、使用するにはユーザー名とパスワードが必要だとわかっているプロキシが1つありますが、何とかテストを通過しています。 「66.60.148.11:3128」:次のプロキシが認証を必要とする例えば

HttpWebRequest webReq = (HttpWebRequest)System.Net.HttpWebRequest.Create("http://www.google.com"); 
webReq.Proxy = new WebProxy(proxy); 
HttpWebResponse webRes = (HttpWebResponse)webReq.GetResponse(); 
if (webRes.StatusCode != HttpStatusCode.ProxyAuthenticationRequired) 
{ 

    Stream myStream = webRes.GetResponseStream(); 
    if (myStream != null) 
    { 
     success = true; 
    } 
} 

:ここ

は、私が持っているサンプルコードです。しかし、コードを実行すると、webRes.StatusCodeがOKに戻り、webRes.StatusCode!= HttpStatusCode.ProxyAuthenticationRequiredテストが渡されます。

ご意見やご感想をお寄せください。

ありがとうございます!

答えて

1

私は、(言い換えると)それを許可しているプロキシに対する要求が、HTTP標準に従わず、407のステータスコードを返さないと思います。これを見るには、WireShark http://www.wireshark.org/などのパケットスニフを行うか、Chromes Developer Tools(Ctrl + Shift + I)などのブラウザデバッグツールを使用します。この場合、webRes.StatusCodeの値を調べると、返されているステータスコードを確認することもできます。

関連する問題