手机android端的html5页面用ajax访问服务器,后台成功从数据库查询到值,但是前段一直调用ajax的error

在手机Android端的HTML5页面中,使用AJAX调用服务器数据时,虽然能成功查询数据库,但前端始终触发error回调。问题根源在于跨域限制。为解决此问题,采用JavaScript调用Java代码,通过Java实现HTTP请求获取服务器数据,然后将数据回传给HTML。确保在Java中使用@JavascriptInterface注解以提高安全性,对于targetSdkVersion大于等于17的应用,别忘了添加此注解。
摘要由CSDN通过智能技术生成

原来代码:

function gerflowerinfo(cateval,URL){
                  $.ajax({
                     url:URL,//不能是双引号,不然为常量
                     type:"post",
                     async:true,
                     dataType:"json",
                     //jsonp: "jsoncallback",//1.解决跨域问题,然而并卵
                     //jsonpCallback:"loginCallback",//2.<span style="font-family: Arial, Helvetica, sans-serif;">解决跨域问题,然而并卵</span>
                     data:{"cateval":cateval},
                     success:function(data){
                       alert("成功了吗?");
                      //$("#fmeans").html("成功了吗?");
                     },
                     error:function(XMLHttpRequest,textStatus,errorThrown){
					    alert(XMLHttpRequest.status);//结果为0
					    alert(XMLHttpRequest.readyState);<span style="font-family: Arial, Helvetica, sans-serif;">//结果为0</span>
					    alert(errorThrown);
				    }
                 })
             }


原来思路:html5页面的js中利用ajax访问服务器的数据,成功的话调用ajax中的success,对data数据进行处理。根据需求放到页面的标签当中。

问题:虽然参数成功传到了后台并且成功的从数据库中查询到了数据,但是返回前台时一直调用error.

问题分析:ajax的跨域局限性,手机和电脑在不同域,数据返回到前台有限制,这是ajax一直存在的问题。

解决方法:后来没办法,只能通过html调用js----->通过js----->访问java代码-------->通过java代码发送http请求服务器数据-------->返回到java,再发送给html

注意:1.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值