android - Volley Offline Working -
ways implement volley json response cache.i tried following way response volley.i response correctly.i dont know how store these json values volley cache
stringrequest strreq = new stringrequest(request.method.post, url, new response.listener<string>() { @override public void onresponse(string response) { system.out.println("mainresp$$$"+response); log.d("volley request success", response.tostring()); result=response; callback.onsuccess(result); } }, new response.errorlistener() { @override public void onerrorresponse(volleyerror error) { volleylog.d("volley request error", "error: " + error.getmessage()); } }) { @override protected map<string, string> getparams() { return params; } }; // adding request request queue appcontroller.getinstance().addtorequestqueue(strreq, tag_string_req);
together comments, have read answer @ following question:
android setup volley use cache
i have tested post
request, following code:
cacherequest cacherequest = new cacherequest(request.method.post, url, new response.listener<networkresponse>() { @override public void onresponse(networkresponse response) { try { final string jsonstring = new string(response.data, httpheaderparser.parsecharset(response.headers)); // check if jsonobject or jsonarray object json = new jsontokener(jsonstring).nextvalue(); jsonobject jsonobject = new jsonobject(); if (json instanceof jsonobject) { jsonobject = (jsonobject) json; } else if (json instanceof jsonarray) { jsonobject.put("success", json); } else { string message = "{\"error\":\"unknown error\",\"code\":\"failed\"}"; jsonobject = new jsonobject(message); } textview.settext(jsonobject.tostring(5)); } catch (unsupportedencodingexception | jsonexception e) { e.printstacktrace(); } } }, new response.errorlistener() { @override public void onerrorresponse(volleyerror error) { // something... } });
my sample asp.net web api code following:
// post api/<controller> public ihttpactionresult post() { string jsonstring = "[" + "{" + "name: \"person 1\"," + "age: 30," + "type: \"post\"," + "}," + "{" + "name: \"person 2\"," + "age: 20," + "type: \"post\"," + "}," + "{" + "name: \"person 3\"," + "age: 40," + "type: \"post\"," + "}" + "]"; jarray jsonobj = jarray.parse(jsonstring); return ok(jsonobj); }
here result screenshot
Comments
Post a Comment