0

WindowsアプリケーションからWebサイトに自動的にログインする必要があります。私はHttpWebRequestでそれをやっていますが、私が欲しいのは

  1. アプリケーションのボタンをクリックします。
  2. インデックスページを開きます(ログイン後のページ)

理由:ユーザー名とパスワードを入力したくないので、ボタンをクリックするだけで、任意のブラウザ(デフォルトのブラウザ)がインデックスページ(ログイン後のページ)で開きます

通常の例:

  1. リンク「 http://mail.yahoo.com 」を開くと、メールアドレスとパスワードを尋ねるページが表示されます。
  2. メールIDとパスワードを入力してログインを押します。
  3. メールボックスページにリダイレクトされます。

何をすべきか ?

  1. ボタンをクリックします
  2. メールIDまたはユーザー名とパスワードをWebサイトに自動的に送信します
  3. メールボックスページを開きます。

ヒント:

  1. HttpWebRequestからCookieを取得します。
  2. ブラウザに設定します。
  3. ブラウザを開き、クレデンシャルを渡して自動的にログインします

誰かが私を助けることができますか?

4

2 に答える 2

1

また、同じ問題を解決する必要があります。問題は、リストのヒント 2 です。すなわち。特定のブラウザの使用に制限することなく、ブラウザに Cookie を設定する方法。私が到達した結論は、標準の「シングル サインオン」ロジックを使用する必要があるということです。ここでは、ここで言及されているような短期トークンを使用するように Web サーバーを更新します... http://msdn.microsoft. com/en-us/library/ms972971.aspx

この場合、手順は次のようになります
。 1. アプリ内 - HttpWebRequest でログオンします。
2. 短期トークンを取得します (リンクは有効期間がわずか 2 秒であることを示しています)
3. URL でブラウザーを開きます http://MyWebsite>/SignNn?token=xxxxxxxxxxxxxxxxxxxxxxxxxxxx
4. 次に、サインオン プロセスが Cookie を正しく返すことができるかどうかを確認する必要があります。

于 2012-06-12T02:41:20.153 に答える
0

これを一般的な方法で解決できるとは思いません。
このようなシナリオでは通常、Web ページ内のフォームが Web サーバーに送信され、Web サーバーがフォームからユーザー名とパスワードの値を読み取り、基になるユーザー管理リポジトリに対してユーザーを認証します。
認証ページに投稿されたフォームをスニファーで分析し、そのような http メッセージを自分で作成して関連するサイトに送信することにより、特定のサイト用のこのようなソリューションを作成できます。

于 2012-05-25T09:56:03.850 に答える