(1)SSL
WebRequest クラスと WebResponse クラスは SSL を使用して SSL をサポートする Web ホストと通信します。
SSL を使用するかどうかは、受け取った URI に基づいて WebRequest クラスが決定します。
URI が "https:" で始まっている場合は SSL が使用されます。
URI が "http:" で始まっている場合は暗号化されていない接続が使用されます。
つまり、WebRequestクラスとWebResponseクラスを使用していれば、SSLについては意識しなくてもかまいません。
(2)Cookie
HttpWebRequest.CookieContainerプロパティがあるので、特にCookieを意識せずとも認証を行うプログラムを作成する事が出来ます。
GETするときに以下のようにクッキーをセットするコンテナをセット
'クッキーをセットするコンテナをセット(複数のサイトの複数のクッキーがセットされる。)
myRequest.CookieContainer = Cookie
POSTするときに以下のようにクッキーをセットするコンテナをセット
さらに
GetRequestStreamメソッドを呼び出せば、Webサイトから受け取ったクッキーがすべてCookieContainerオブジェクト(変数Cookie)に格納されているのでここから自動的に適切なクッキーがセットされる。
'POST送信するデータの長さを指定
myRequest.ContentLength = postDataBytes.Length
'クッキーをセットするコンテナをセット(複数のサイトの複数のクッキーがセットされる。)
myRequest.CookieContainer = Cookie
'ポスト・データの書き込み
myPostStream = myRequest.GetRequestStream()
myPostStream.Write(postDataBytes, 0, postDataBytes.Length)
myPostStream.Close()