備忘ぶ録-新犬小屋

ココログ「備忘ぶ録(https://kotatuinu.cocolog-nifty.com/blog/)」のコピー場所です。

WebRequest()で訳が分からない例外が発生したけど

C#なりPowershellなりで、cocolog(@nifty)のログイン画面(http://www.cocolog-nifty.com/t/sso/start)をWebRequestクラスを使って読み込もうとして、System.Net.HttpWebRequest.GetResponse()を実行したとき、何故かSystem.Net.WebException例外が発生する。

Messageは、"An error occurred while sending the request. The server returned an invalid or unrecognized response."となっていて、理解不能

訳が分からんなーとさんざん悩んだんだけど(HTTPstatus=302でRedirectしているし、そこら辺かなと思ったけどAllowAutoRedirectプロパティはデフォルトでtrueだしーとか)、結局はUserAgentプロパティに何も設定していなくて、WebServerにお前ナニモンじゃとはじかれたもよう?
FireFoxの開発者モードで確認した内容を設定してみたら通った。

 
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://www.cocolog-nifty.com/t/sso/start");
request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:66.0) Gecko/20100101 Firefox/66.0";
HttpWebResponse response = (HttpWebResponse)request.GetResponse();