Volley JSON响应

时间:2017-12-27 12:23:45

标签: android android-volley

我想在我的代码中使用 Volley 我应该使用哪种请求类型用于我的回复,我无法理解。 网址::: http://localhost/api/product/read.php

    {
      "data":[
        {
         "category_id":"1",
         "category_name":"Today's Recipe",
         "recipes":[
          {
           "id":"1",
           "recipe_name":"Peanut, and Chilli Noodles",
           "ingredients":"Serves: 4 \r\n\r\n250g (9 oz) fresh Chinese ,
           "prepration":"Prep:15min Cook:10min Ready in:25min \r\n\r\nCook 
           noodles in a large pot of boiling water until done.  have 
           chilli paste, use minced red chilli to taste."
     }
    ]
  },

2 个答案:

答案 0 :(得分:1)

试试这个:

RequestQueue requestQueue = Volley.newRequestQueue(context);
    final String url = "url here";

    JsonObjectRequest getRequest = new JsonObjectRequest(Request.Method.GET, url, null,
            new Response.Listener<JSONObject>()
            {
                @Override
                public void onResponse(JSONObject response)
                {
                Log.e(" result",(String.valueOf(response)));
                }
            },
            new Response.ErrorListener()
            {
                @Override
                public void onErrorResponse(VolleyError error) {

                }
            }
    );
   requestQueue.add(getRequest);

希望这有帮助。

答案 1 :(得分:0)

StringRequest jsonObjectRequest = new StringRequest(Request.Method.POST, url,  new Response.Listener<String>() {
            @Override
            public void onResponse(String response) {

                if (response != null) {
                    try {
JSONObject jsonObject = new JSONObject(response);
                        if (jsonObject.getString("status").equalsIgnoreCase("success")) {
                    JSONArray jsonArray = jsonObject.getJSONArray("data"); 
if(jsonArray!=null && jsonArray.length()>0){
    for(int i=0;i<jsonArray.length();i++){
JSONObject data_object=jsonArray.getJSONObject(i);
JSONArray recepie = data_object.getJSONArray("recipes"); 

}
//                           
                        }
                    } catch (JSONException e) {
                        e.printStackTrace();
                    }
                }
            }
        }, new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {
                }

        });
        MySingleton.getInstance(context).addToRequestQueue(jsonObjectRequest);
        jsonObjectRequest.setRetryPolicy(new DefaultRetryPolicy(
                APIConstants.API_TIMEOUT, //for 30 Seconds
                DefaultRetryPolicy.DEFAULT_MAX_RETRIES,
                DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));
    }

希望这有帮助