2017-10-09 93 views
-3

如何使用post方法將JSON數組發送到服務器?使用以下方法如何使用post方法將JSON數組發送到服務器?

{ 
"user_id":"1", 
"username":"shubham", 
"order":[{"product_id":"2","qty":"5","price":"100","total":"500","product_name":"choclate"},{"product_id":"1","qty":"2","price":"50","total":"500","product_name":"choclate"}] 
} 
+0

首先,這不是Json數組,這是帶有一個具有數組的order元素的Json。你看過jax R嗎? – user641887

+0

無效的JSON把'數組右括號']'放在'order'數組上 – akhilesh0707

+0

這是我必須在服務器上發送的數據格式 –

回答

0

您可以創建JSON,並通過向服務器發送任何圖書館使用的是

private JSONObject getRequestJSON(){ 
    JSONObject jsonObject=null; 
    try { 
     jsonObject= new JSONObject(); 
     jsonObject.put("user_id", 1); 
     jsonObject.put("username", "Shubham"); 
     //Order Array 
     JSONArray orderJson=new JSONArray(); 
     //Order Object 
     JSONObject orderObject=new JSONObject(); 
     orderObject.put("product_id",2); 
     orderObject.put("qty",5); 
     orderObject.put("price",100); 
     orderObject.put("total",500); 
     orderObject.put("product_name","choclate"); 
     // Add Order object to order array 
     orderJson.put(orderObject); 
     //Order Object 
     JSONObject orderObject1=new JSONObject(); 
     orderObject1.put("product_id",3); 
     orderObject1.put("qty",2); 
     orderObject1.put("price",100); 
     orderObject1.put("total",200); 
     orderObject1.put("product_name","choclate"); 
     orderJson.put(orderObject1); 
     //Add order array to main jsonObject 
     jsonObject.put("order",orderJson); 

    }catch (JSONException e){ 
     e.printStackTrace(); 
    } 
    return jsonObject; 
} 
0

添加在您的模塊級gradle這個文件的依賴性。

compile'com.google.code.gson:gson:2.7' 

您的JSON模式

public class OrderRequest{ 
    int user_id; 
    String username; 
    List<Order> order; 
    public class Order{ 
     int product_id; 
     int qty; 
     float price; 
     float total; 
     String product_name; 
    } 
} 

創建您的活動上面的類的對象,並設置所有值創建一個類。

Gson gson = new Gson(); 
String orderJson = gson.toJson(orderRequestObject); 

將orderJson設置爲post參數。

相關問題