我想在我的代码中使用 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."
}
]
},
答案 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));
}
希望这有帮助