YahooのHPに会員ログインし、ログイン後のページを取得するプログラムをVB6.0で作っています。
プログラムは以下のようにInetコントロールを用いて、ログインIDとパスワードをPOSTし、サーバから発行されるクッキー(Set-Cookie:の値)を取得後、ログイン後のページアクセスの際に当該クッキーをヘッダに毎回設定(Cookie:に設定)させて実現しようと考えています。
url = "http://login.yahoo.co.jp/config/login?"
Inet1.Execute url, "POST", "ログイン情報", "Content-Type: application/x-www-form-urlencoded"
しかし、パケットキャプチャすると、POSTの際になぜかCookieが設定された状態になっており、サーバからクッキーを受け取ることができていません。キャッシュかと思い、プログラム実行前に手作業でインターネット一時ファイルの「クッキーを削除」で削除しましたが、状況は変わりませんでした。
上記がInetコントロールに関する問題なのか、Cookieの仕様的な問題なのか切り分けがつかないため、なぜCookieが設定されてしまうのか、またどうすれば設定されないようにPOSTすることができるのか、ご教授下さい。宜しくお願い致します。
Inetコントロールはcookieとか自動でやってくれるので
制御したいなら
winsockかwebbrowserコントロール(navigateの最後の引数)
を使ったほうがいいと思います。
ツイート | ![]() |