java - Volley Post request returns no response inside onResponse -


so wanna print result of response , generates data models using gson, response never gets return yet onresponse called.!

if notice logcat, log.i inside onresponse isn't showing..!? inside onsuccess of activity uses request, shows logs normally, if log contains response object not show weird , doesn't make sense..!?

logcat

i/geturl:: http://1925.232.55/login.php i/getparams:: {username =samy, password=123456} d/libc: [net] android_getaddrinfofornetcontext+,hn 20(0x6),sn(),hints(known),family 0,flags 1024, proc=com... d/libc: [net] android_getaddrinfo_proxy netid:0 d/libc: [net] android_getaddrinfo_proxy-, success i/onsuccess:: check /* log inside activity uses request */ 

i tried test request using postman same url , params , returns json response normally..?

postman response

{     "status": "success",     "user_id": "10",     "user_name": "samy",     "full_name": "samy samy",     "picture": "st_pictures/img_085207.jpg",     "level": "1",     "school": "ny school",     "city": "ny",     "class": "6",     "age": "22",     "teacher": "2",     "token": "f808e758sdfsdfsf162dbdfcf88e3dc8a96" } 

the request code

 final requestqueue queue = volley.newrequestqueue(context);        final stringrequest sr = new stringrequest(request.method.post, getloginurl(), new response.listener<string>() {         @override         public void onresponse(string response) {           log.i("onresponse: ", response + "");       requestresult.onsuccess(response);         }, new response.errorlistener() {         @override         public void onerrorresponse(volleyerror error) {       requestresult.onfail(error);             volleylog.e("error: ", error.getmessage());           error.printstacktrace();         }       })       {         @override         protected map<string, string> getparams() {           map<string, string> params = new hashmap<string, string>();           params.put("username ", un);           params.put("password", pass);           log.i( "getparams: ", params.tostring());           return params;         }          @override         public byte[] getbody() throws authfailureerror {           log.i( "geturl: ",geturl());           return super.getbody();          }       }       ;        queue.add(sr); 

update #1

url http://clients.intertech.ps/raz/std.php

 e/volley: [1] 2.onerrorresponse: error:   w/system.err: com.android.volley.parseerror: org.json.jsonexception: end of input @ character 0 of   w/system.err:     @ com.android.volley.toolbox.jsonobjectrequest.parsenetworkresponse(jsonobjectrequest.java:73)  w/system.err:     @ com.android.volley.networkdispatcher.run(networkdispatcher.java:123)  w/system.err: caused by: org.json.jsonexception: end of input @ character 0 of   w/system.err:     @ org.json.jsontokener.syntaxerror(jsontokener.java:449)  w/system.err:     @ org.json.jsontokener.nextvalue(jsontokener.java:97)  w/system.err:     @ org.json.jsonobject.<init>(jsonobject.java:156)  w/system.err:     @ org.json.jsonobject.<init>(jsonobject.java:173) w/system.err:     @ com.android.volley.toolbox.jsonobjectrequest.parsenetworkresponse(jsonobjectrequest.java:68)  w/system.err:  ... 1 more 

you have use jsonobjectrequest, :

hashmap<string, string> params = new hashmap<string, string>(); params.put("username","samy"); params.put("password","123456");  jsonobjectrequest req = new jsonobjectrequest(url, new jsonobject(params),  new response.listener<jsonobject>() {        @override        public void onresponse(jsonobject response) {            gson gson = new gson();            yourclass yourclass = gson.fromjson(response.tostring(), yourclass.class);        }    }, new response.errorlistener() {        @override        public void onerrorresponse(volleyerror error) {             //error        }    }); 

Comments

Popular posts from this blog

python - Selenium remoteWebDriver (& SauceLabs) Firefox moseMoveTo action exception -

html - How to custom Bootstrap grid height? -

angular - Copying node modules to wwwroot AspNetCore -