私は安心なWebサービスを持っており、POSTとGET HTTPリクエストを送信し、JAVAでhttpURLConectionでPUTとDELTEリクエストHTTPを送信する方法を示します。JAXのHttpURLConnectionでPUT、DELETE HTTPリクエストを送信する方法
答えて
PUT
URL url = null;
try {
url = new URL("http://localhost:8080/putservice");
} catch (MalformedURLException exception) {
exception.printStackTrace();
}
HttpURLConnection httpURLConnection = null;
DataOutputStream dataOutputStream = null;
try {
httpURLConnection = (HttpURLConnection) url.openConnection();
httpURLConnection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
httpURLConnection.setRequestMethod("PUT");
httpURLConnection.setDoInput(true);
httpURLConnection.setDoOutput(true);
dataOutputStream = new DataOutputStream(httpURLConnection.getOutputStream());
dataOutputStream.write("hello");
} catch (IOException exception) {
exception.printStackTrace();
} finally {
if (dataOutputStream != null) {
try {
dataOutputStream.flush();
dataOutputStream.close();
} catch (IOException exception) {
exception.printStackTrace();
}
}
if (httpsURLConnection != null) {
httpsURLConnection.disconnect();
}
}
は私が@BartekMからDELETE要求を使用する場合は、この例外を取得
URL url = null;
try {
url = new URL("http://localhost:8080/deleteservice");
} catch (MalformedURLException exception) {
exception.printStackTrace();
}
HttpURLConnection httpURLConnection = null;
try {
httpURLConnection = (HttpURLConnection) url.openConnection();
httpURLConnection.setRequestProperty("Content-Type",
"application/x-www-form-urlencoded");
httpURLConnection.setRequestMethod("DELETE");
System.out.println(httpURLConnection.getResponseCode());
} catch (IOException exception) {
exception.printStackTrace();
} finally {
if (httpURLConnection != null) {
httpURLConnection.disconnect();
}
}
感謝は完璧です!私はメソッドDELETEが必要です。 – user2816207
htpURLConnection.connect()を呼び出す必要はありませんか?この機能は何のためですか? –
あなたは
protected void doPut(HttpServletRequest req,
HttpServletResponse resp) throws ServletException, IOException;
は、HTTPのPUT操作を実行し上書きすることができます。デフォルトの実装では、 HTTP BAD_REQUESTエラーが報告されます。 PUT操作は、FTP経由で ファイルを送信するのと同じです。このメソッドをオーバーライドするサーブレットの作者は、リクエストとともに送信されたContent- *ヘッダを とみなさなければなりません。これらのヘッダーには、 のコンテンツ長、コンテンツタイプ、コンテンツ転送エンコーディング、 コンテンツエンコーディング、コンテンツベース、コンテンツ言語、コンテンツロケーション、 コンテンツ-MD5、およびコンテンツ範囲が含まれます。 コンテンツヘッダーを受け入れることができない場合は、エラー応答(501)を発行し、要求を 破棄する必要があります。詳細については、HTTP 1.1 RFCを参照してください。
このメソッドは、「安全」または「冪等」である必要はありません。 PUTを介して要求された操作には、 ユーザーが責任を負うことができる副作用があります。必須ではありませんが、このメソッドをオーバーライドするサーブレット作成者 は、影響を受けるURI のコピーを一時記憶域に保存したい場合があります。
と
protected void doDelete(HttpServletRequest req,
HttpServletResponse resp) throws ServletException, IOException
HTTPの削除操作を実行します。デフォルトの実装では、 にHTTP BAD_REQUESTエラーが報告されます。 DELETE操作では、クライアントが にURIを要求してサーバーから削除することができます。この方法では、 を「安全」または「冪等分」のいずれかにする必要はありません。 DELETEによって要求された操作には、ユーザーが責任を負う可能性のある副作用がある可能性があります。 必須ではありませんが、このメソッドをサブクラス化するサーブレット作成者は、影響を受けたURIのコピーを一時記憶域に保存したい場合があります( )。
これらはサーブレットAPIメソッドですが、OPは私が思うHTTPクライアントについて質問しています –
おそらく、彼はdoGetとdoPutを管理するサーブレットを既に実装していて、他の2つのオペレーションを実装する方法を知りたいと思っています – RamonBoza
私はgetterとpostTを持って、削除を実装し、メソッドを置く必要があるが、tenngoの入力パラメータが私を助けることができるので来ない? - @MatthewGilliard – user2816207
を削除します。それを修正するには
java.net.ProtocolException: DELETE does not support writing
を、ちょうどIこの指示を削除してください:
// httpURLConnection.setDoOutput(true);
- 1. HttpURLConnectionでPUT、DELETE HTTPリクエストを送信する方法は?
- 2. AndroidでHTTP DELETEリクエストを送信する
- 3. WHMプラグインでHTTPリクエスト(POST、GET、DELETE、PUT)を行う方法は?
- 4. PUT/DELETEメソッドを送信できるロードテストツール
- 5. curlを使用してHTTP PUTリクエストで空のURIを送信する方法
- 6. 1つの投稿に複数のファイルを送信するJAXのHttpURLConnectionのリクエスト
- 7. PUTリクエストで認証パラメータを送信する方法 - Jmeter
- 8. バックボーンでPUTリクエストを送信する
- 9. Indy 9でDELETEリクエストを送信する方法は?
- 10. HTTPSUrlConnectionを使用してGItHub APIにPUTとDELETEリクエストを送信する
- 11. (GET httpリクエスト)サーバーにCookieを送信する方法
- 12. AndroidデベロッパーコンソールHTTPリクエストの送信方法
- 13. Silverlight 4でHTTP PUTとDELETEを動作させる方法
- 14. HTTPリクエストを送信する
- 15. Angular.jsの$ httpで同期リクエストを送信する方法
- 16. Googleのアプリケーションエンジンで外部HTTPリクエストを送信する方法
- 17. ファイルとLaravelでデータの配列でPUTリクエストを送信する方法
- 18. PUTとDELETE Django
- 19. Android HttpURLConnection setRequestMethod PUT
- 20. 送信するHTTPリクエスト
- 21. python robo framework - httpリクエストでフォームデータを送信する方法は?
- 22. AndroidでプロキシにHTTP GETリクエストを送信する方法
- 23. プレーフレームワーク(scala)でHTTP 2.0リクエストを送信する方法
- 24. 間隔と非同期でHTTPリクエストを送信する方法
- 25. UMLアクティビティダイアグラムでHTTPリクエストを送信する方法
- 26. PUTリクエストを送信するには、このリンクを作成する方法?
- 27. JSONリクエストのデータフィールドにアクセスする方法JAX-RSでFlexクライアントから送信
- 28. java(アンドロイドスタジオ)でHTTP POSTリクエストを送信
- 29. JSアプリケーションでのPUT、DELETE(spine.js)
- 30. 角2 Http deleteボディにjsonを送信
あなたは(https://github.com/hgoebl/DavidWebb)[DavidWebb]と呼ばれる小さなライブラリを使用することができるのHttpURLConnectionのネイティブの使用のための代替として。そこには、同様のライブラリのリストがあります。ネイティブにHttpURLConnectionを使用すると、面倒でエラーが発生しやすくなります。 – hgoebl