問題タブ [httpurlconnection]
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.
java - リモート REST エンドポイントに対して HttpUrlConnection を無期限に開いたままにするのは合理的ですか?
シンプルな REST スタイルの HTTP 投稿を介して、継続的に実行され、頻繁に (平均して 1 秒あたり 1 回以上) 外部 API を呼び出すプロセスを最適化しようとしています。私が気づいたことの 1 つは、現在、HttpUrlConnection が作成され、次の構造に従ってすべての API 呼び出しに対して閉じられていることです (重要でないコードとエラー処理は読みやすくするために削除されています)。
httpプロトコルを直接扱った経験はあまりありませんが、一般的なソケットの常識/知識に基づいて、接続を一度だけ作成して再利用し、再初期化するだけの方がはるかに効率的であるように思われます問題が発生した場合、毎回接続ネゴシエーションを回避するには、次のようにします。
私の質問は次のとおりです。
- これは一般的に合理的な最適化ですか (速度の向上は顕著でしょうか)?
はいと仮定します:
- 出力ストリームと接続を再利用する必要がありますか?
- エラー時にのみ接続を再初期化するのは合理的ですか、それとも特定の数のリクエスト/時間の後に再初期化する必要がありますか?
java - HttpUrlConnection のヘッダーを変更する方法
Java Html ドキュメントを少し改善しようとしていますが、HttpUrlConntion
. 1 つは、ユーザー エージェントが Java VM の場合、一部のサーバーがリクエストをブロックすることです。もう 1 つの問題は、がまたはヘッダー フィールドHttpUrlConnection
を設定しないことです。いくつかのサイトがこれらのフィールドを使用して、コンテンツが自分のサイトからアクセスされたことを確認しているため、ここでもブロックされています。私が見る限り、唯一の解決策は、HTTP プロトコルの URL ハンドラーを置き換えることです。または、デフォルトの HTTP ハンドラーを変更する方法はありますか?Referrer
Location
java - Java を使用した認証が必要なリモート URL への接続
認証が必要な Java のリモート URL に接続するにはどうすればよいですか。次のコードを変更して、プログラムでユーザー名/パスワードを提供できるようにして、401 がスローされないようにする方法を見つけようとしています。
java - Android ダウンロード バイナリ ファイルの問題
インターネットからアプリのバイナリ ファイル (ビデオ) をダウンロードする際に問題が発生しています。Quicktime では、直接ダウンロードすると問題なく動作しますが、私のアプリではどういうわけかめちゃくちゃになります (テキスト エディターではまったく同じように見えますが)。以下に例を示します。
java - Java でエラー応答本文を読み取る
Java では、HTTP の結果が 404 の範囲の場合、このコードは例外をスローします。
私の場合、たまたまコンテンツが 404 であることはわかっていますが、とにかく応答の本文を読みたいと思っています。
(私の場合、レスポンスコードは 403 ですが、レスポンスの本文に拒否の理由が説明されているので、それをユーザーに表示したいと思います。)
応答本文にアクセスするにはどうすればよいですか?
java - HttpURLConnections はタイムアウトを無視し、戻りません
HttpURLConnection から InputStream を開こうとすると、一部のサーバーからランダムに予期しない結果が得られます。これらのサーバーは接続を受け入れ、ソケットを開いたままにするがデータをストリームに送り返すことを許可しない「stay-alive」ヘッダーで応答するようです。
そのシナリオは、マルチスレッドクローラーの試みを少し「複雑」にします。接続がスタックすると、それを実行しているスレッドが返されないためです...一部のスレッドがまだ働いている。
接続応答ヘッダーを読み取って、その「生きている」答えを特定し、ストリームを開こうとするのを避ける方法はありますか??
java - HttpURLConnectionでPUT、DELETE HTTPリクエストを送信するには?
java.net.HttpURLConnection
PUT、DELETE リクエストを (実際に) HTTP ベースの URLに送信できるかどうかを知りたいです。
GET、POST、TRACE、OPTIONS リクエストを送信する方法を説明する記事をたくさん読みましたが、PUT および DELETE リクエストを正常に実行するサンプル コードはまだ見つかりません。
java - PerlのHttpURLConnectionに似たものはありますか?
PHPスクリプトへのHTTPURLConnectionを作成し、スクリプトによって返されるHTTP応答を取得したいと思います。Perlでこれを行う方法はありますか?
要するに、私は次と同等のPerlが欲しいです:
同様のperlモジュールを検索しようとしていますが、見つかりませんでした。どんな助けでも大いに役立つでしょう。