を使用したとき、私は私のasp.netアプリケーションとTORプロキシを使用してのHttpWebRequestを送信しようとしているとwebresponse.GetResponse()メソッドを呼び出すとき、私は、このエラーメッセージが表示されます。サーバーがプロトコル違反をコミットしました。 = ResponseStatusLineセクションTORプロキシ
をThe server committed a protocol violation. Section=ResponseStatusLine
私は、ウェブ上で解決策を探してみたと私は、このエラーのための3つの主な解決策が見つかりました:
は、Web.configファイルに追加します。
<system.net> <settings> <httpWebRequest useUnsafeHeaderParsing="true"/> </settings> </system.net>`
の行を追加します。コードに
webRequest.ProtocolVersion = HttpVersion.Version10;
を。- コードに
request.ServicePoint.Expect100Continue = false;
行を追加します。
上記の解決策のそれぞれは、エラーメッセージについて何も変わっていません。ここで
は、要求コードです:
WebRequest.DefaultWebProxy = new WebRequest("127.0.0.1:9051");
HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(url);
webRequest.CookieContainer = new CookieContainer();
webRequest.ProtocolVersion = HttpVersion.Version10;
webRequest.KeepAlive = false;
webRequest.Method = "GET";
webRequest.ContentType = "application/x-www-form-urlencoded";
webRequest.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8";
webRequest.UserAgent = "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.168 Safari/535.19";
HttpWebResponse webResponse = (HttpWebResponse)webRequest.GetResponse();
StreamReader streamReader = new StreamReader(webResponse.GetResponseStream());
string html = streamReader.ReadToEnd();
webResponse.Close();
return html;
は誰でも、私は、このためのソリューションを見つけるのを助けることができますか?
これらの行を追加しようとしましたが、ステータスはプロトコルエラーではなくServerProtocolViolationです。 –
実際、レスポンスは私の例外ではnullです:( –
ここにも同じ問題があります。レスポンスはnullです。 – tnktnk