首页 最新文章网站交互正文

ajax同步调用采用post提交数据的问题

ajax在同步调用的时候如果在url中传参数,并且采用post的方法提交数据的话,使用360se7.0版本就会导致一些参数丢失,

目前只发现在这款浏览器会产生这个问题,但是异步调用就没有问题。


根据HTTP的规范,get和post都是与服务器交互的方法,其中get用于查询获取资源,而post用于提交和更新资源信息,另外还有2种方法put和delete(这两种方法很少用),也就是说get方法不会修改变更数据,很像数据库中的select查询关键字。同理post是要修改服务器上的资源,比如对文章进行评论就需要使用post方法。

二者还有一个重要的差别是get请求的数据都会以明文的形式展示着url中,以?分隔开URl和传输数据,以&连接参数,如果是空格就转换成+,如果是中文就转换成16进制,这些数据回作为URL的一部分被放置在http的协议头中,另外参数个数及URL的长度http规范并没有刻意限制,只是部分浏览器或服务器操作系统进行了限制;post不会把提交的数据不会放置在协议头中而是放置在包体中,不会在url中直接展示数据明文,从这个角度来看post的方法更安全。


jQuery.ajax({
url: testbase+"/shopping/config_new!ajaxAge.action",url: sinosoft.base+"/shop/order_config_new!ajaxAge.action?applicantBirthday="+brithday+"&productId="+productId+"&effdate="+effective,
dataType: "json",
type:"POST",
async: false,
success: function(data) {
if(!data){
alert("XXXXXXXXXXXXXXXX");  
tFlag =  false;
}else{
tFlag =  true;

}
});
该段代码的目的是想通过ajax的同步调用,提交数据到后台,校验后返回json对象,通过判断json对象返回警告信息该用户,但现象时用户直接就收到了警告信息,分析原因可能如下:1、实际进行了异步调用;2、校验异常,返回的json对象有误;3、默认使用的get方法,在此浏览器下与type:"POST"冲突;

评论

觉得有用就打赏吧
关注本站公众号,享受更多服务!
联系方式
QQ:2727987445
地址:中国·辽宁
Email:2727987445#qq.com
Copyright2015-2024.Powered by ©️云水客 | 网站地图 | 辽ICP备14000512号-5