- - PR -
レスポンスを取得したい
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2003-08-15 12:00
Windowアプリケーションでも、Webアプリケーションでも構わないのですが、
ホームページのURLをリクエストして、そのレスポンスを取得したいのです。 例えば、「http://www.atmarkit.co.jp」というURLから、ブラウザが受け取る はずのレスポンスを取得したいのですが、全然方法が分かりません。 どのようなクラスを使えばよいのでしょう また、参考になるようなサイトがあったら教えてください。お願いします | ||||
|
投稿日時: 2003-08-15 12:23
こんにちわ。諸農です。
HttpWebRequestクラスが使えると思います。 他にもSystem.Net名前空間を探せばいろいろと出てくると思います。 ではでは(^^)/ | ||||
|
投稿日時: 2003-08-15 13:01
ありがとうございます。
ちょっと見てみたのですが、MSDNを見てみただけだと難しそうなので 時間がかかりそうなので、とりあえずお礼だけでも、と思いました。 がんばります。 | ||||
|
投稿日時: 2003-08-15 13:04
こんな感じ
ちなみに、ノータッチデプロイメントでは、方法1だけ使えます。 | ||||
|
投稿日時: 2003-08-15 15:28
リクエストを行うサーバがLAN内にある時にはきちんとできました。
ありがとうございます。 しかし、「http://www.atmarkit.co.jp」のようなインターネットに対しては 方法1 HttpWebResponse w = (HttpWebResponse)wr.GetResponse(); 方法2 Byte[] b = w.DownloadData("http://www.atmarkit.co.jp/"); の行で 「基になる接続が閉じられました : リモート サーバーに接続できません。」 というメッセージがでてエラーになります。 今行っている環境では、IEでは普通にネットは見れるのですがプロキシサーバを通さ ないと、ネットは見れません。プロキシサーバを設定すればいいかと思い、下を参考に して、 .NET Framework を使用して、XML Web サービス クライアントからプロキシ サーバーを介して接続できるように構成する方法 http://support.microsoft.com/default.aspx?scid=kb;ja;JP307220 Web参照ができません http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=2321&forum=7 machine.configの設定を変えてみたり、自動構成スクリプトを使用するのチェックを 外してみたりしましたが現象は変わりませんでした。 とりあえず、件名については解決致しました、ありがとうございます。 来週、プロキシサーバの事をよく知っている人が来たら聞いて見ます。 #今のここの環境でできるのかできないのか、全然わかりません。 | ||||
|
投稿日時: 2003-08-15 16:23
ひょっとしてProxy認証しないと外に出れなくないですか?
私の会社もそうなんですがもとそうなら PROXYの認証設定をすればいいので
このように認証すると外部のページが読めます。 参考としては 緑のバイク ★ フリーソフト公開ホームページ の中の初めてのC#−>プログラム全般−>Web からダウンロード と どぼん!のVB道の中の.NET Tipsの プロキシサーバーを指定してダウンロードする あたりを参考にしました。 | ||||
|
投稿日時: 2003-08-18 09:38
御回答ありがとうございます。
GetResponseする所で 「基になる接続が閉じられました : リモート サーバーに接続できません。」 のエラーがでてしまいます。 ユーザ名の所を、ドメイン名\\ユーザ名やユーザ名@ドメイン名とかでもやって みましたが、やはり駄目でした。 ステップ実行してみましたが、Web.Proxyの中身にプロキシサーバのアドレス等 は入っていませんでした。これは、GetDefaultProxyメソッドがきちんと動作し ていないという事でしょうか?いろいろとIEの設定を変更しながらやってみまし たが状況は変わりませんでした。 | ||||
|
投稿日時: 2003-08-18 15:31
であれば
// IE のプロキシ設定を使用する。 webReq.Proxy = System.Net.WebProxy.GetDefaultProxy(); を 'プロキシサーバーに"localhost:8080"を指定 Dim proxy As New System.Net.WebProxy("http://localhost:8080") のようにプロキシサーバーを指定してみたらどうでしょうか? |
1