問題タブ [httpwebrequest]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - System.Web.HttpWebRequest オブジェクトで SSL 2.0 を使用するにはどうすればよいですか?
この質問をうまく表現するために必要な情報がすべて揃っているかどうかわかりませんが、ご容赦ください。
自己署名 SSL 証明書で保護されているローカル Web ページ (ローカルは 192.168.* を意味します) があります。System.Net.HttpWebRequest オブジェクトを使用してこのページにアクセスしようとしていますが、奇妙な問題が発生しています。
[SSL 2.0 を使用する] オプションがオフになっている Internet Explorer でこのページにアクセスすると、ブラウザは接続を確立できないかのようにエラーを返します。(つまり、サーバー送信エラーではなく、ブラウザー接続エラーです。) [SSL 2.0 を使用する] オプションがオンになっている場合、ページは正常に機能し、これが自己署名証明書であるという標準の警告が表示されます。 、続行しますか、など。
今私の問題は、HttpWebRequest オブジェクトを使用してこのページにアクセスしようとしているときに返されるエラーは、「SSL 2.0 を使用する」がオフになっているときに IE がスローするエラーと同じように、接続が予期せず閉じられたことです。(自己署名証明書であるという事実を無視するコードを既に用意していますが、そこまでは進んでいません。)
System.Net.HttpWebRequest がリクエストを行っているときに、「SSL 2.0 を使用する」ようにするにはどうすればよいですか?
c# - HttpWebRequest を使用して POST する場合の 401 (はい、資格情報を使用しました)
私は HttpWebRequest を使用して XML をプルダウンし、POST データを「WebService」に戻し、POST で 401 を取得しています。
リクエストを作成するときに資格情報を追加し、資格情報キャッシュを試して PreAutenticate を True に設定しましたが、まだ 401 が返されます! :(
ルーターで HTTP トラフィックを監視し、認証されていない GET 要求を作成するように設定しました。401 にヒットし、認証された GET を作成し、通過が許可されます。POST を見ると、401 にヒットしていることがわかります...そして、認証された POSTも試行しません。
これは、携帯電話 (WinMobile 6.1 上のコンパクト フレームワーク 3.5 および 2.0) でのみ表示されます。同じ .exe は、どのデスクトップ マシンでも完全に機能します。
私は何が欠けていますか?助けてください!
asp.net - WebRequest の実行中にテキストを読み込んで表示する
Webフォームにボタンがあります。このボタンをクリックすると、onclick イベント ハンドラー中に HttpWebRequest が実行されます。リクエストの後、リクエストからのレスポンスを HttpContext.Current.Response にコピーし、それをクライアントに送信します。
この Web リクエストにはしばらく時間がかかる場合があります (レポートを生成しているため、最大 5 秒)。この間、ユーザーは、ブラウザーの進行状況バーと回転する IE アイコン (IE を使用している場合) を除いて、何かが進行中であることを示すことはありません。そのため、これが発生している間は読み込みインジケーターが必要です。
ボタンの onclick イベント中に (OnClientClick を使用して) 起動する JavaScript を使用しようとしましたが、それが機能している間、Web 要求がいつ終了したかを確認する方法がわかりません。クライアントに応答を送信するだけなので、完全なポストバックは発生しません。
UpdatePanel でボタンをラップして UpdateProgress を使用しようとしましたが、HttpContext.Current.Response に応答を送信して Response.End() を呼び出すと、応答がうまくいかないため、javascript でエラーが発生します。 (ユーザーがダウンロードできるように Excel シートを送り返します)。
ユーザーがダウンロードできるようにファイルを送り返すので、別のウィンドウをポップアップ表示したくありません。IE では、ダウンロードをブロックする情報バーが表示されるからです。
ここに何かアイデアはありますか?
c# - SSLへのHttpWebRequestが失敗する
このコードを使用して、特定のURLにリクエストを送信します。
これを使用して、3台のサーバーが背後にあるWorkLoadBalancerの粘着性をテストしています。それらはすべて、サーバーのサーバーIDが書き込まれるsid.htmと呼ばれる静的HTMファイルを持っています。
HTTPを使用するURLの場合、これは正常に機能します。しかし、HTTPSでは機能しません。この例外が発生します:
要求は中止されました:SSL/TLSのセキュリティで保護されたチャネルを作成できませんでした。
現在、WLBの背後には2台のサーバーしかなく、ファイアウォールの背後にパブリックIPを備えたサーバーが1台あります。スタンドアロンサーバーにアクセスした場合、HTTPSリクエストは正常に機能しますが、WLBにアクセスすると、上記のエラーが発生します。
1つ:単一サーバーとWLBのヒットを切り替えるために、hostsファイルを使用します。私のドメインのDNSレコードは、現時点では単一のサーバーを指しています。そこで、ホストファイルにレコードを入れてWLBをヒットしました。これは問題を引き起こしてはいけません...
私の質問:HttpWebRequestはどのSSLクレデンシャル/証明書を使用しますか?40ビットDESまたは56ビットDESを使用する場合、それらはWLBで無効になっているため、これが理由です。ただし、IE3およびNetscape 1および2以降、これらの証明書はブラウザで使用されていません。
httpwebrequest - HttpWebResponse から「二重の応答」が返されるのはなぜですか?
次のコード (ASP.Net 2.0 で実行) は、要求された URL の内容を2 回表示します。要求された URL のコンテンツを 1 回だけ表示したい。何が間違っているのかわかりません。要求された URL は XML を返しています。その URL に直接アクセスすると、問題なく動作します。
c# - SSL経由のHttpWebRequest?
以前に HttpWebRequests を使用して HTTPS Web サイトにデータを投稿したことがありますが、通常の HTTP 投稿とは異なることをする必要はありませんでした。
これが適切に行われるようにするために私が見逃したトリックがあるかどうか誰かが知っていますか?
c# - HttpWebRequest、リクエストのキャンセルに関する既知の問題?
HttpWebRequest HTTP 要求のキャンセルに関する既知の問題はありますか? 4 ~ 5 件のリクエストをキャンセルすると、次のリクエストが無期限にハングすることがわかりました。
これに既知の問題がない場合、私はおそらく何か間違ったことをしています...これがどのように機能するかを示す良いリソースの例はどこにありますか(いくつかのコードスニペットではなく、完全な解決策)?
既知の問題がある場合、必要なだけ多くのリクエストを効果的にキャンセルするために、それらを回避するにはどうすればよいですか?
c# - HttpWebRequest を使用して、機密性の高い重要な問題なしに Web ページをダウンロードする
HttpWebRequest を使用して、機密性の高い重要な問題なしに Web ページをダウンロードする
.net - .NET HttpWebRequest の接続問題のシミュレーション
HttpWebRequest クラスを使用するときに接続の問題 (接続が遅い、応答が完了しない、接続が切断されるなど) をプログラムでシミュレートする方法はありますか?
ありがとう
編集:さらに詳しく説明するには、デバッグのためにこれが必要ですが、最終的にはテストに変えたいと思います。非同期メソッドの BeginGetRequestStream、EndGetRequestStream、BeginGetResponse、および EndGetResponse を使用しています。私はそれらをすべて適切にラップしました (願っています) 発生した例外をログに記録する Try Catch ブロック。
これがいくつかのケースで機能することはわかっています (たとえば、ネットワーク ケーブルを抜いたときなど)。しかし、まれに (つまり、要求している Web サイトが遅い場合のみ)、システムがクラッシュし、イベント ログに記録されます。
HttpWebRequest からのものであると仮定していますが、すべてのコードが Try Catch ブロックでラップされています。
そのような場合、モックは役に立ちますか?
c# - C#: タイムアウト付きの URL のダウンロード
.NET でそれを行う最善の方法は何ですか? 私はいつも必要なものを忘れていますDispose()
(または でラップしusing
ます)。
編集: を長い間使用した後、WebRequest
カスタマイズについて知りましたWebClient
。ずっといい。