自作のWEBリクエスト システムを構築しています。
以下を参考にHttpWebRequestを利用しています。
http://www.atmarkit.co.jp/fdotnet/dotnettips/326cookie/cookie.html
勉強の為、
mixiへの自動ログインシステムを構築したのですが、
うまくログインが出来ません。
■mixiのログイン構造
①トップページ https://mixi.jp/ をGETする
②ログインページ https://mixi.jp/login.pl?from=login0" へログイン情報をPOSTする
ポスト内容は以下の通り
next_url:/home.pl
post_key:①のレスポンス内容のinput hidden項目
postkey:空文字
email:ログインURL
password:ログインパスワード
sticky:on
以下のクッキーがセットされる
session
stamp
③ログイン後チェックページ https://mixi.jp/check.pl?n=%2Fhome.pl をGETする
②でセットされた以下クッキーでリクエストする
session
stamp
正常だと、HTTPステータス302のレスポンスヘッダーに Location:http://mixi.jp/home.pl があり
ログイン後トップ画面を表示する
■事象
③がうまくいきません。
③を行ったところHTTPステータス200が返ってきて、
「Cookieが無効になっているため、ログインできません。」がHTMLの内容として返っています。
■環境
Windows 7/8.1
Visual Studio
C++/CLI
■ソース内容
以下を使用してHTTP/HTTPS通信を行っています
HttpWebRequest^ req;
HttpWebResponse^ res;
以下を参考に、以下をなぞって構築しています
http://www.atmarkit.co.jp/fdotnet/dotnettips/326cookie/cookie.html
■確認したこと/原因
Chromeのクッキー編集アドインを使って本自称の再現テストを行いました。
まず、自動ログインシステムを②の終了時点でクッキー情報を吐かせて終了させます。
吐かれたクッキー情報をChromeにセットして、Chrome上で③を行うと、正常ログインできました。
よって、②までは正常に出来てることになります。
また、クッキー session を削除した状態で、Chrome上で③を行うと、本事象(クッキーエラー)が再現しました。
よって、何かしらの理由で②のクッキーが③で送れていないものによることだと思われます。
また、HTTPSの通信をキャプチャしようと、
WiresharkやFiddlerを試してみたのですが、
普通のWEBブラウザの通信を複合化することはできたのですが、
自作のシステムの複合化は出来ませんでした。
■質問内容/想い
本自称の原因を教えて下さい。
本自称の原因を特定する方法を教えて下さい。
本自称を解決する方法を教えて下さい。
WiresharkやFiddlerで自作システムのHTTPS通信をキャプチャする方法を教えて下さい。
なんでも良いです。どんな情報でもヒントになると思っています。
28時間程度格闘していて、もう疲れきっています。
どうぞ宜しくお願い致します。
あなたの回答
tips
プレビュー