主要的代码和数据如下,在浏览器浏览网页的时候,可以正常的取得数据,但是在安卓模拟器中却什么都取不到,请教一下这是怎么回事?
js代码
$.ajax({ type : "get", async:false, url : "http://127.0.0.1:6001/GetUsers.ashx", dataType : "jsonp", crossDomain: true, jsonp: "callbackparam",//服务端用于接收callback调用的function名的参数 contentType: "application/json;utf-8", jsonpCallback:"success_jsonpCallback",//callback的function名称 success : function(json){ $("#uname").html(json[0].uname); }, error:function(){ alert('fail'); } });
public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/plain"; String callbackFunName = context.Request["callbackparam"]; //从数据库中取数据的代码就省略了,只贴出了和主题相关的代码 string json = callbackFunName + "(" + JsonConvert.SerializeObject(ds.Tables[0]) + ")"; context.Response.Write(json); }
([{"uid":1,"uname":"吴迪","uage":"24","usex":"男"},{"uid":2,"uname":"小小","uage":"25","usex":"女"}])
<access origin="http://127.0.0.1*"/>
同学,你这是在开玩笑?"http://127.0.0.1:6001/GetUsers.ashx"能访问到服务端?APP首先肯定是C/S的模式,先分清楚哪个是客户端哪个是服务端~
127.0.0.1是用vs在本地开启的,相当于服务端,app用的phonegap
@wudigg: 懂不懂什么是本地回环地址?127.0.0.1能访问到服务端
纠结啥啊 把失败原因显示出来就是啊
error:function(res){ alert(res.ResponseText); }
http://127.0.0.1:6001/GetUsers.ashx
换成
http://localhost:6001/GetUsers.ashx
试试看.
第一,用真机测试
第二,后端搭建要接近生产环境,不要搞什么本地测试之类
第三,没以上条件也要努力创建条件
第四,最新版的PG可以直接post,我也不清楚是什么原因,之前的版本似乎不行,但最新PG的我在项目里直接post了没问题。