問題タブ [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.

0 投票する
2 に答える
726 参照

httpurlconnection - ユーザーがURLConnectionを使用してドキュメントにアクセスできるかどうかを確認します

ドキュメントのリストへのURLがあり、ユーザーがそれらのドキュメントにアクセスできるかどうかを確認したいと思います。これらのドキュメントにアクセスするには、ユーザーのログインとパスワードが必要です。サーバーにはNTLM認証が必要なため、JCIFS APIを使用してドキュメントへのURL接続を確立し、HTTP応答コードを確認しています。応答コードが401の場合、ユーザーにアクセス権がないことを確認しています。このアプローチでは、ドキュメントはすべてのコンテンツをダウンロードしますか?ドキュメントのサイズによって応答時間は異なりますか?より良いアプローチはありますか?前もって感謝します。


回答ありがとうございます。ドキュメントをダウンロードする必要はありませんが、ユーザーがドキュメントにアクセスできるかどうかを確認するだけです。応答が速く、ドキュメントのサイズによって変化しないソリューションを探しています。

こんにちは、リクエストタイプをHEADに設定する提案をありがとうございます。2、3、4、5で始まるHTTP応答コードがたくさんあります。これをどのように解釈できるか説明していただけますか?私は次の解釈を想定しています。私が間違っている場合は訂正してください。

  1. 2で始まる応答コードは、ユーザーがドキュメントにアクセスできることを意味します。
  2. 3で始まる応答コードは、実際のURLに別のリクエストを行うためにさらにロジックを追加する必要がありますか?これを自動的に行う方法のコードはありますか?
  3. 401の応答コードは、ユーザーがアクセスできないことを示します。
  4. 5で始まる応答コードは、ホストサーバーに問題があることを示しています。
0 投票する
1 に答える
1676 参照

java - HTTPURLConnectionで要求と応答を区別するにはどうすればよいですか?

こんにちは私はサーバーがgzip圧縮をサポートしているかどうかを評価する必要があります。

したがって、リクエストでgzipをAccept-Encodingとして設定し、サーバーの応答に「Content-Encoding:gzip」が含まれているかどうかを評価します。

ただし、HTTPURLConnectionを使用してこれを行う方法についてはよくわかりません。特に、応答についてConnectionオブジェクトにクエリを実行する場合。私は現在:

0 投票する
5 に答える
1938 参照

java - 奇妙なjava.net.HttpURLConnectionの動作についてサポートが必要

HttpURLConnectionを使用してjpgをダウンロードしようとしていますが、非常に特殊なバグが発生しています。

URLは次のとおりです: http ://www.vh1.com/sitewide/promoimages/shows/m/my_antonio/video/supertrailer/seg_1/320x240.jpg

ブラウザで開くと画像が表示されます。

ただし、HttpURLConnectionを使用すると、画像が取得されません...取得されるのは301で、これは非常に奇妙なことに、http: //wap.vh1.comにリダイレクトされます。

それで

先に進み、ブラウザに表示されるjpgではなく、wap.vh1.comからテキストをダウンロードします。

これを引き起こしているヘッダーの奇抜さがあると思いますが、ブラウザーをリダイレクトしている場所と同じ場所にリダイレクトするために、ホストが何を期待しているのか、はっきりとはわかりません(そしてcurlとwgetと私がそれを指すと思うことができる他のすべて)。

私は自分を撃つ準備ができているので、あなたが私を助けてくれれば、私の6歳の娘が父親を失うのを防ぐことができます。

0 投票する
6 に答える
94281 参照

java - HTTPURLConnectionがHTTPからHTTPSへのリダイレクトに従わない

HttpURLConnectionJavaがHTTPからHTTPSURLへのHTTPリダイレクトに従わない理由がわかりません。次のコードを使用して、https: //httpstat.us/のページを取得します。

このプログラムの出力は次のとおりです。

http://httpstat.us/301へのリクエストは、次の(短縮された)応答を返します(これは絶対に正しいようです!):

残念ながら、JavaHttpURLConnectionはリダイレクトに従いません!

元のURLをHTTPS( https://httpstat.us/301)に変更すると、Java期待どおりにリダイレクトに従うことに注意してください!?

0 投票する
3 に答える
16816 参照

java - 複数のJavaHttpConnectionsを同じ宛先に対して開いたままにする方法

HttpURLConnection APIを使用して、同じプロバイダーに対してREST APIを頻繁に呼び出しています(一種の集約ユースケース)。5つの接続のプールを常にプロバイダーホストに対して開いたままにします(常に同じIP)。

適切な解決策は何ですか?これが私たちが試したことです:

この時点で、BufferedReaderがバイトを返さなくなるまで入力ストリームを読み取ります。プロバイダーへの基盤となる接続を再利用する場合は、その後どうしますか?入力ストリームが完全に読み取られると、接続がプールに追加されるという印象を受けました。

このように数週間機能していましたが、今日はこの例外の生成が停止しました。java.net.SocketException: Too many open files

lsof(を実行することにより)次 のようなCLOSE_WAIT状態のソケットが多数見つかりました。java 1814 root 97u IPv6 844702 TCP colinux:58517->123.123.254.205:www (CLOSE_WAIT)

conn.getInputStream()。close()またはconn.disconnect()のいずれかが接続を完全に閉じて、プールから削除しませんか?

0 投票する
2 に答える
102638 参照

android - HttpURLConnection でコンテンツ タイプを設定するには?

HttpURLConnectionContent-Typeに設定する方法を知っていますか?

次のコードは Blackberry にあり、Android に相当するものが必要です。

アンドロイドに適していますか?

お知らせ下さい。

0 投票する
2 に答える
3388 参照

android - フォームにデータを投稿するときに HttpClient が機能しないのに HttpUrlConnenction が機能するのはなぜですか

サイトで GET を実行して 2 つの Cookie を取得し、これらの Cookie を使用して同じサイトに投稿する Android アプリを作成しています。

前述のように、GET から始めて、この操作を実行するために org.apache.http.client.HttpClient を使用しています。

ここまでは順調ですね。requiredCookies 行はまだ気にしないでください。HttpClient を =( で動作させることができないため、Java.net impl で使用されます。動作していない HttpClient Post 部分を見てみましょう。

ここで起こることは、Cookie が保存されている localContext で POST を実行することです。これはうまくいきません。HTTP/1.1 401 No セッションが発生します。これでうまくいかなかったので、別のアプローチ(java.net.HttpURLConnection)を試しました。同じ GET 部分をまだ使用していることを思い出してください

そして、VIOLA a 200 が表示され、すべてが魅力的に機能します。皆さんはどう思いますか?わからないので誰か回答お願いします。

0 投票する
1 に答える
2716 参照

android - Android で HttpURLConnection の切断が機能しない

メソッドの接続解除元HttpURLConnection正しく機能していないようです。次のコードを実行すると:

IllegalStateExceptionメソッドを呼び出すとが得られsetDoInputます。例外は言う:

接続済み

0 投票する
1 に答える
7011 参照

java - Java: HttpURLConnection を使用した HTTP PUT

HTTP PUT はどのように行うのですか? 私が使用しているクラスは、PUT を実行していると考えているようですが、エンドポイントは GET を実行したかのように処理しています。私は何か間違ったことをしていますか?

どちらが印刷されていますか:

これが機能する場合は、別のライブラリを含めたくありません...