私はJSONデータでPOSTメソッドを送信する必要があります。JSONオブジェクトをシリアル化してstringに送る必要があることを確認してください。 JSON文字列そのものではありません。どのようにすればJAVAを使って実装できますか?JSONデータ(Java)でPOSTメソッドを送信するにはどうすればよいですか?
1
A
答えて
0
1
public static String sendPostRequest(String postURL) throws Exception{
String responseStr=null;
//make POST request
String jsonContent = "{'name': 'newIndia','columns': [{'name': 'Species','type': 'STRING'}],'description': 'Insect Tracking Information.','isExportable': true}";
//String data = "{\"document\" : {\"_id\": \"" + id+ "\", \"context\":" + context +"}}";
URL url = new URL(postURL);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setDoOutput(true);
connection.setDoInput(true);
connection.setInstanceFollowRedirects(false);
connection.setRequestMethod("POST");
connection.setRequestProperty("Content-Type", "application/json");
connection.setRequestProperty("charset", "utf-8");
connection.setRequestProperty("Content-Length", "" + Integer.toString(jsonContent.getBytes().length));
connection.setUseCaches(false);
OutputStreamWriter writer = new OutputStreamWriter(connection.getOutputStream(), "UTF-8");
writer.write(jsonContent);
writer.close();
responseStr="Response code: "+connection.getResponseCode()+" and mesg:"+connection.getResponseMessage();
System.out.println(connection.getResponseMessage());
InputStream response;
// Check for error , if none store response
if(connection.getResponseCode() == 200){
response = connection.getInputStream();
}else{
response = connection.getErrorStream();
}
InputStreamReader isr = new InputStreamReader(response);
StringBuilder sb = new StringBuilder();
BufferedReader br = new BufferedReader(isr);
String read = br.readLine();
while(read != null){
sb.append(read);
read = br.readLine();
}
// Print the String
System.out.println(sb.toString());
connection.disconnect();
return responseStr;
}
詳細については、exampleを参照してください。
0
gsonを使用すると、JSONデータをWebサービスに簡単にPOSTできます。例えば
:
public class MyData { //var myJsonData = {
private boolean fans = true; // fans:true,
private boolean funds = true; // funds:true
//private String chart = "day"; // }
}
今すぐリアルウェブサービスへのPOJOを送信:
public class Main {
public static void main(String... args) throws Exception {
URL theUrl = new URL("https://robertsspaceindustries.com/api/stats/getCrowdfundStats");
Gson gson = new Gson();
JsonParser jp = new JsonParser();
MyData thedata = new MyData();
HttpsURLConnection urlConnection = (HttpsURLConnection) theUrl.openConnection();
urlConnection.setRequestMethod("POST");
urlConnection.setDoOutput(true); //allow parameters to be sent/appended
DataOutputStream wr = new DataOutputStream(urlConnection.getOutputStream());
wr.writeBytes(gson.toJson(thedata)); //convert the POJO to JSON, then to binary.
wr.flush();
wr.close();
urlConnection.connect(); //start request transmission
JsonElement retJson = jp.parse(new InputStreamReader((InputStream) urlConnection.getContent())); //convert the input stream to a json element
System.out.println(retJson.getAsJsonObject());
urlConnection.disconnect(); //end request transmission
}
}
返信をして:
{"success":1,"{"fans":910125,"funds":8410319141},"code":"OK","msg":"OK"}
(注、同胞執筆時点でのcURLコマンドの貸し出し) - >
curl 'https://robertsspaceindustries.com/api/stats/getCrowdfundStats' --data-binary '{"fans":true,"funds":true}'
関連する問題
- 1. Guzzle POST BodyのPUTメソッドでraw JSONデータを送信するにはどうすればよいですか?
- 2. AndroidでPOST jsonデータを送信するにはどうすればいいですか?
- 3. フォーム送信でJSONとしてデータを送信するにはどうすればよいですか?
- 4. POSTデータを送信してJQueryでナビゲートするにはどうすればよいですか?
- 5. url.openStream()でPOSTデータを送信するにはどうすればよいですか?
- 6. セントラルエリアにデータを送信するにはどうすればよいですか?
- 7. JavaでPOSTデータを送信する
- 8. JqGridで削除中にJSONデータを送信するにはどうすればよいですか?
- 9. JSONデータをJavaのPOST経由で送信する
- 10. JavaでPOSTデータを送信
- 11. GETメソッドを使用してデータを送信するにはどうすればよいですか?
- 12. getメソッドを使用して大きなデータを送信するにはどうすればよいですか?
- 13. JavaのメソッドのようにHTTP Postエンティティを設定するにはどうすればいいですか?HttpPost.setEntity
- 14. jerseyを使用してJavaで入れ子になったjson POSTリクエストを送信するにはどうすればよいですか?
- 15. Javaメソッド(空手フレームワーク)で各項目を送信するにはどうすればいいですか?
- 16. PHPでHTTP POST要求でパラメータを送信するにはどうすればよいですか?
- 17. ClojureScript AJAX jsonデータを送信するPOST
- 18. ang4でapiサーバーにjsonリクエストを送信するにはどうすればよいですか?私は(POST)を送るアンギュラ4にformBuilderを使用して、APIサービスに要求を送信するにはどうすればよい
- 19. jsonとphpを使って本文にデータを送信するにはどうすればいいですか?
- 20. jquery ajaxからPOSTリクエストをフラスコビューに送信するにはどうすればよいですか?
- 21. JSONデータをアンドロイドのサーバーに送信するにはどうすればいいですか?
- 22. C#でPOST変数を送信するにはどうすればよいですか?
- 23. POSTリクエストでファイルを送信するにはどうすればよいですか?
- 24. curlでREST XML POSTリクエストを送信するにはどうすればよいですか?
- 25. curlでHTTP POSTを送信するにはどうすればよいですか?
- 26. angularjsに複数のパラメータを含むPOSTを送信するにはどうすればよいですか?
- 27. フォーム送信の代わりにjQuery Post/Ajaxを使用するにはどうすればよいですか?
- 28. コードでヒントメッセージを送信するにはどうすればよいですか?
- 29. プログラムでUILongPressGestureを送信するにはどうすればよいですか?
- 30. GmailApp_2でリッチテキストメールを送信するにはどうすればよいですか?
GWTを使用していますか? –
POSTの部分について:http://stackoverflow.com/questions/3324717/sending-http-post-request-in-java – Thilo
そして、あなたはどういう意味ですか?JSONオブジェクトを文字列にシリアライズしました。 JSON文字列自体ではないのですか? –