C#でHTTPのリダイレクト先を調べるもの
リダイレクトされる先を調べるようなっぽいものを諸事情で作りました。
色々参考にしました。
一応、Googleの短縮URLサービスからここのブログ用のURL作ってテストはしました……です。
きっと色々突っ込み所はあると思うけど、気にしない方向で……(滝汗)
以下コード
using System; using System.Net; class HttpRequestViewer { public static void View( string uri ) { HttpWebRequest req = (HttpWebRequest)WebRequest.Create( uri ); HttpWebResponse res = null; bool existLocation = false; req.AllowAutoRedirect = false; req.Method = "GET"; res = (HttpWebResponse)req.GetResponse(); Console.WriteLine( "HTTP/{0} {1} {2}", res.ProtocolVersion, (int)res.StatusCode, res.StatusDescription ); foreach ( string key in res.Headers.AllKeys ) Console.WriteLine( "{0}: {1}", key, res.Headers[key] ); Console.WriteLine( "----" ); existLocation = isExistLocation( res.Headers ); if ( existLocation ) View( res.Headers["Location"] ); } private static bool isExistLocation( WebHeaderCollection collection ) { string[] array = collection.AllKeys; int res = Array.IndexOf( array, "Location" ); return res >= 0; } }
最近目が悪くなったのか誤字を見落としやすくなった気がする……。
Windows Timeを自動起動できるようにする
手っ取り早く下記リンクの解決策より、方法は3つある。
(※いずれの方法も管理者権限が必要。)
方法3
Windows Timeサービスを管理ツールのサービスから「自動(遅延開始)」に設定する。
但しこの方法に限り、タスクスケジューラで下記のエントリを無効にする必要がある。
Microsoft\Windows\Time Synchronization\Synchronize Time
※この記事は下記リンクを参考に執筆させていただきました。
Windows 7 および Windows Server 2008 R2 のスタンドアロン環境で Windows Time サービスが自動的に起動しない
STLのvectorで重複を削除
※この記事は下記の内容を参考に執筆させていただきました。
STLのvectorから同一要素を削除 - minus9d's diary
STLのvectorにおいて重複を削除するにはsort()後にunique()し、erase()する必要がある。
この辺り関数化して用意しておくといいかも。
以下僕が書いたサンプルコード
続きを読む