問題タブ [urlconnection]
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 - Java HttpURLConnection:コンテンツの長さの計算
私は現在、bitbucketの問題であるRESTfulAPI用のライブラリを開発しています。私は順調に進歩しました。次に、 HTTPPUTリクエストを要求する問題の更新のセクションに取り組みます。
HTTPエラーコードが原因でスタックしています411 Length Required
。少しグーグルした後、次のコード例を見つけました。
今私の質問:正確に測定されるものは何ですか?
- クエリ文字列
- urlencodedクエリ文字列
- パラメータの値のみ...??
そしてconnection.setRequestProperty("Content-Length", String.valueOf(<mycomputedInt>));
、コンテンツの長さ属性を設定する適切な方法はありますか?
例をいただければ幸いです。前もって感謝します。
編集:
たとえば、bitbucketwikiエントリの次のcurlの例を使用して計算を説明できます。
android - Android と Google App Engine の間でリクエストが断続的にドロップされる
Android アプリから Google App Engine でホストされている Python スクリプトに GET リクエストを送信するために Java URLConnections を使用している人はいますか? まれに、IOExceptions のユーザー レポートが表示され、対応する要求が GAE でログに記録されなくなります。これは彼らのネットワーク接続が切断されたことを意味すると思いますが、ここでの経験がある人がいるかどうか疑問に思っています.
GAE にはある程度のスプールアップ時間があることを理解していますが、待ち時間が問題を引き起こす前に、少なくともリクエストがログに記録されると思いました。ここで何かが足りない気がします...
編集:かなり漠然とした質問を書いたので、お詫び申し上げます。私の問題は特にGAEとは何の関係もないと今は信じています。私の質問は、Android アプリで URLConnection を使用する場合、リクエストを送信する前にネットワーク接続を確認し、IOExceptions をキャッチしてリクエストを一定回数再起動するのがベスト プラクティスですか?
乾杯、ライアン
java - HttpInputStream read() メソッドの失敗
次のコードを使用して、URL からファイルをダウンロードします。
一部の URL の read() メソッドでは、ダウンロードのサイズ (コンテンツの長さ) まで読み取る前に -1 を返します。
このコードで何が起こっているのか、誰でも私に提案できますか..
plsはあなたの提案を提供..
java - URLConnection(Proxy proxy) 設定したプロキシを無視
複数のマシンからの負荷がかかっている SOCKS プロキシをテストしようとしています。私のコードの概要は、次の行に沿ったものです
- 1 つのクライアントでサーバーに直接接続し、テスト ファイルをダウンロードして、かかった時間を記録します。
- プロキシ経由で 1 つのクライアントに接続し、テスト ファイルをダウンロードして、かかった時間を記録します。
- プロキシ経由で複数のクライアントに接続し、テスト ファイルをダウンロードし、時間を記録します。
1と2は同じ機能で実行されます。
ダウンロード オブジェクトは Thread から継承されます。ほとんどの作業は、次のような run() メソッドで行われます。
問題は、ベースライン関数を呼び出すと、常に最初に選択されたプロキシが使用されることです。最初に withproxy スレッドを実行すると、withproxy スレッドがプロキシを使用します。最初に withoutproxy を実行すると、withproxy はプロキシを無視します。本当に奇妙なことは、後でプロキシを介して複数のクライアントに接続しようとすると、ベースライン接続がどのように機能したかは関係ありません.ベースライン接続がプロキシを使用しなかった場合でも、複数のクライアント接続は引き続き使用されます.
ここで何が欠けていますか?
ありがとう
java - URL オブジェクトでのカスタム HTTP 要求ヘッダーの設定が機能しない
HTTP を使用して IP カメラから画像を取得しようとしています。カメラには HTTP 基本認証が必要なので、対応する要求ヘッダーを追加する必要があります。
後でurl
オブジェクトをに渡します。ご想像のとおりImageIO.read()
、HTTP 401 Unauthorized を取得していますが、user
とpass
は正しいです。
私は何を間違っていますか?
私も試しましnew URL("http://user:pass@myipcam/snapshot.jpg")
たが、それもうまくいきません。
java - URLConnectionがスタックし、エラーがスローされない
以下は私のコードです。このコードを実行すると、常にスタックします。ループを100回実行することもあれば、3000回実行することもあります。奇妙なのは、エラーがスローされないことです。誰かアイデアはありますか?
java - urlconnection で html 埋め込みアプレットを呼び出す
次の単純な埋め込みアプレット html ページがあります。
このページ (つまり、アドレスが " http://192.168.0.2/WelcomeApplet.html
") を呼び出すと、アプレットはブラウザに正しく表示されます。
URL ページを表示しないようにするため、このページはサーブレットによってのみ呼び出す必要があります。そのため、doGet
サーブレット メソッドに次のコードが挿入されます。
すべて正常に動作し、解析された HTML は上記と同じですが、アプレットは表示されず、JVM は次のように報告します: " WelcomeApplet.class not found
"
セキュリティの問題ではなく、実装の問題のようです (私は推測します)。
何か案が?
ありがとう
java - 展開されていないWAR内のJAR内のファイルのURLConnectionを取得できますか?
Webアプリケーションのクラスパスにあるリソースファイルがいくつかあります(重要な場合は、JAR内にあります)。たとえば、を呼び出すことで、これらのリソースのコンテンツにアクセスできることを知っていますSomeClassLoader.getResourceAsStream( "/samples/myscript.txt" )
。私は過去にこれを爆発したWARファイルと爆発していないWARファイルの両方でテストして成功しました。
ただし、アプリ内の他の既存のクラスと統合するには、そのファイルにURLConnectionオブジェクトを提供する必要があります。分解getResource("/samples/myscript.txt").openConnection()
されたWARで呼び出しが機能することをテストして確認しました(さらに、デバッグにより、結果が分解されたファイルへのURLであることが明らかになりました)。file:///
質問:そのメソッドは、展開されていない(「パッケージ化された」)WARでも機能しますか?
(現在、戦争を爆発させずに展開するサーバーに簡単にアクセスできないため、完全に試してみるのではなく、質問しているのです。また、一部のサーバー(Jetty、TomcatなどunpackWARs="false"
)では、爆発しない展開が許可されています。しかし、舞台裏では、彼らは戦争を解き放ち、爆発的な展開のように効果的に動作し、明らかに正しく機能しています。過去に問題を引き起こしたサーバーはWebsphereとWeblogicだったと思います)。
android - Android2.3.3デバイスでhttps応答を読み取るときのSSLProtocolException
Gingerbread 2.3.3で導入され、2.3.4で修正されたバグ(Issue 16121 )の問題に直面しています。
httpsリクエストの応答をSSLProtocolException
読み取ると、入力ストリームから〜40kBを読み取った後にがスローされます。この問題は、Issue16121で説明されています。ページの下部には、バグを明らかにするAndroidプロジェクトがあります。バグレポートは、stackoverflow(質問)のユーザー「Alex」から発生します。
さまざまなhttpsリクエストを送信するアプリが市場にあります。それらのほとんどは最大200kBを受け取る必要があります。サーバー側では何も変更できません。DefaultHttpClient
httpsリクエストを送信するためにを使用します。
- どうすればその問題を効率的に解決できますか?
- 別のhttpsAPIを使用していますか?どのhttpsAPIですか?
android - URLConnection を使用した POST リクエスト、数字のみが機能するようです
いくつかの POST パラメーターを使用してサーバーへの要求を実行しようとしています。ここで見つけたコードを使用しました: Using java.net.URLConnection to fire and handle HTTP requests
問題は、ssn の最初の数字を除いて、サーバーの php ページに値を書き出すと、すべての値が「0」になることです。また、Java コードに返される応答には、ヘッダーの「content-type」メンバーに「charset=UTF-8」が含まれていません。しかし、php/html コードでわかるように、ヘッダーはどこも変更していません。
Android コード:
リクエストを送信したページ:
したがって、「res」変数で得られる結果は、「Test Test2 123456-7899」の代わりに「00123456」を含む html コードです。
これは私の分野ではないので、答えがかなり理解しやすいといいですね:)
前もって感謝します!