使用ajax post提交数据发生400错误的解决办法

2016/7/13 8:9:6 | 阅23911 来源:好空间网络 [打印] [关闭]
 

最近经常遇到用户来问,为什么用ajax 提交数据的时候(经常post方式提交有问题,get方式提交一般没有问题)发生400错误呢,在本地是正常的,到服务器上就不正常了..

其实ajax的400错误,翻阅ajax的状态码就可以知道,那是参数不正常引起的

为此我总结了几个可能引发此问题的地方

1:利用ajax post提交遇到400错误的时候,建议换get提交看看是不是正常的

2:如果必须post提交,那么请检查post提交的时候是否有参数,因为到正式环境中,ajax验证比较严格,如果没有参数他也会发生400的情况,建议增加带参数提交

3: 如果是以表单的形式提交,建议在 xmlhttp.open() 和 xmlhttp.send()的中间增加

xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded;charset=UTF-8");

这样一段话!

4:如果以上都不能解决问题,那么请考虑请登陆会员--jsp空间管理--您的虚拟主机--高级管理--tomcat&jdk版本更换中把 tomcat的版本更换到7.0.20 在看看(各个tomcat版本有些许差异,7.0.20我们经过验证可以解决post 无参数提交400的问题,已经有很多客户这样解决问题了)

 5:关于AJAX使用post方式带参数提交(一般是上传文件或者图片时),发生404,一般有2个地方需要注意

   5.1:使用了struts2上传的时候 有个上传文件的临时目录,一般是在struts2的配置文件里面,如图:


这里的临时保存目录需要做下修改,设置服务器上的绝对路径,如果不知道绝对路径是多少,可以和我们客服联系获取您在我们服务器上的绝对路径

ps:如果修改第一步后正常,则以下第二步就不用修改了

   5.2:struts2还有个上传成功后的保存路径,这里最好也要修改下默认可能是这样的写的是相对路径


建议把他修改为绝对路径 如图:


 

 

做了以上以后如果还是问题,请技术和我们联系,我们将尽最大的努力帮您排查,定位问题!

 

经营许可证ICP:皖B2-20100052 公司邮箱:zcdnsz@jspkongjian.net
Copyright © 2004-2015, 安徽好空间网络科技有限公司 版权所有 , 本站素材部分来源于网络,如有侵权请告知删除。