How To Make A Nested Json Object In Java?
Solution 1:
You need to create a JSON
, and add that JSON
as a parameter in your POST
. To do that you should probably :
post.add(new BasicNameValuePair("data",json.toString());
You could use org.json.JSONObject
, it is included in the Android SDK
.
Solution 2:
Create a Model Class for the Json, initialize it with your data. Then use Google Gson to convert it toJson also from Json to Back to the Object. and also here are two links which make your life more Easier for using Json. Online Json Editor. You can check that generated json is in the correct format or not. http://www.jsoneditoronline.org/ And Json to POJO Generated (Model Class Generator) http://www.jsonschema2pojo.org/
Solution 3:
BasicNameValuePair
is what you use to add POST parameters. It's a little unclear what you are asking. are you asking how, given that JSON, to submit the param values as post parameters?
You need to first parse the JSON, then pull out the parameters, then add them to the form post, like this,
JSONObject jo = newJSONObject(jsonString);
JSONObject joParams = jo.getJSONObject("params");
String username = joParams.getString("username");
post.add(newBasicNameValuePair("username",username);
You will of course want to do checking on the JSON to ensure the params object exists, and to ensure the username parameter exits.
Solution 4:
If you just want to send a block of JSON to the server you should not use key value pairs but just post the data as a StringEntity.
HttpPostrequest=newHttpPost(api_call);
request.setHeader("Content-Type", "text/javascript");
request.setEntity(newStringEntity(jsonString);
httpClient.execute(request);
Post a Comment for "How To Make A Nested Json Object In Java?"