HttpWebRequestを生成する前に、以下のコードを記述しておくと、WebRequest.Create(url)メソッドは、ブラウザに依存しない独自のHttpWebRequest実装インスタンスを返す。
このインスタンスは、以下の処理を実装したい場合に用意されている。
- GET および POST 以外の HTTP メソッドを使用する場合。
- 応答のステータス コード、本文、およびヘッダーを使用する場合。
- SOAP サービスや REST サービスへのメッセージなど、HTTP XML 要求を送信する場合。
- 手動で Cookie を管理する場合。
これにより、Cookie管理を独自に実装する事ができる。
WebRequest.RegisterPrefix("http://", WebRequestCreator.ClientHttp); // このコード
HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest;
WebRequest.RegisterPrefixの第二引数に
"WebRequestCreator.ClientHttp"を指定することがポイント。
Cookieの管理方法は、通常の.NET Frameworkを利用する場合と同様に、HttpWebRequestに関連付けるCookieContainerを独自に永続化する形で行う。