2012-05-10 16 views
0

私はウェブサイトを多く使用していますので、私はそれを使用して簡単にデータを取得するのに役立つツールを作成しています。私が扱うウェブサイトはJSPを使って構築されています。C#特別なポートのWebサイトに自動的にログイン

私が構築しているツールは、C#でWPFを使用して作成されます。だから私は何をする必要がある(そして、どのようにするか)は、Webサイト(HttpWebRequestまたは同様のもの)、ログイン(ユーザー名とパスワードといくつかの他のパラメータとPOSTメソッドを介して送信されます)だけでなく、リフェラーなど...

ウェブサイトに接続してログインし、2つまたは3つの異なるページに移動してファイルを取得するか、コピーするアプリケーションを作成する方法を教えてくださいHTMLコードと私は残りの部分を処理します。

ありがとうございます...

+0

この質問はスタックオーバーフローには広すぎます。あなたはそれを特定の質問に分解しなければなりません。ログインを自動化する方法。 –

+0

ログインは、通常、http要求の「Authorization」ヘッダーに値を送信することによって制御されます。正確な値は認証モデルに依存しますが、ログインページにuid/pwdを指定することで得られるユーザー名/パスワードエンコーディング(基本認証で)またはセッショントークンのいずれかになります。トークンはクッキーに保存することもできます。これらの詳細を知らなくても、あなたの質問に答えることはできません。これらの詳細がわからない場合は、トラフィックを盗聴する必要があります。 – faester

+0

@faester:ヘッダーの詳細や投稿の詳細など、必要なすべての詳細があります。しかし、これは機密情報を持つ内部のウェブサイトなので、私はそれらを公開することはできません。 – sikas

答えて

1

私は基本的に自分の質問に答えたと思います。 C#でWeb接続ライブラリを使用し、ログインし、GetResponse()を使用してHTMLテキストをプルします。

+0

これについての例を挙げることはできますか?以前に開いたURLを参照して次のURLを読み込む方法 – sikas

+1

http://msdn.microsoft.com/en-us/library/system.net.httpwebrequest.getresponse.aspx – iefpw

1

あなたの質問に対するコメントのごく少数の議論から、セキュリティに関連する質問よりも、.NET内からのWeb要求を行う際に認証とhttp動詞を設定する方法に関連する質問を解釈します。私はあなたを誤解して申し訳ありません。

あなたはHttpWebRequestに言及していますが、それは私が始める場所でもあります。

あなたはWebRequestに静的Create方法にインスタンスを作成する:

var request = (HttpWebRequest)WebRequest.Create('https://some.url'); 

あなたはその後(Dateヘッダーのような)いくつかの値を使用して設定することができない

request.Headers[HttpRequestHeader.Authorization] = 'your auth token'; 

のいずれかを使用してヘッダを割り当てます上記のメソッドは、専用のプロパティを持っているためです。 msdnのHttpWebRequest descriptionを参照してください。

動詞/方法を変更するには、単にMethod文字列プロパティを使用します。

GetRequestBodyと 'GetResponseBody methods. They return respectively a write-only/read-onlyストリーム'を使用してリクエストの書き込みとレスポンスボディの読み取りが行われます。これらは、複数ページの読み込みを行う場合に優先される非同期スタイルのバリアントにも存在します。

+0

お会計ありがとう、私はこれを試してみると2 uを戻ってくる...そして確かに私は一度私のテスト:)あなたの答えを受け入れる – sikas

関連する問題