在Ajax中使用get和post所遇到的问题及解决办法

夏夜,天上缀满了闪闪发光的星星,像细碎的流沙铺成的银河斜躺在青色的天宇上。大地已经沉睡了。我任了性,纵容思念开成一片海,定格成回忆里抹不去的风景。太阳把大海映红了,好像得大海披上了一层红纱。

使用get遇到的问题:

1.问题一. 缓存:当每次访问的url相同,客户端直接读取本地缓存里面的内容,即使后台数据变化前台也不会有变化;

解决方法:在?后面链接一个num=【随机数Math.random()】或者num=【时间戳new Date().getTime()】,'1.php?username="May"&'+num(这里没有变量名,避免和后台参数冲突)

2.问题二. 乱码,当传递中文或者特殊字符的时候,前台显示出现乱码

解决办法:使用编码encodeURI('蜗牛')

测试结果:通过使用Chrome测试,结果get的两种问题,都已经得到了解决

使用post遇到的问题:

post方式,数据放在send()里面作为参数传递;

问题:当没有设置请求头的时候,后台直接不对数据进行处理;前台就无法获得后台返回的数据

解决方法:手动设置请求头(xhr.setRequestHeader('content-type','application/x-www-form-urlencoded')),声明发送的数据类型

【注】post没有缓存问题,没有编码问题(因为在请求头里面已经进行了声明)

测试结果:通过使用Chrome测试,结果post这个没有声明头部信息,问题是存在的

简单的说:Get请求和Post请求的区别

1.使用Get请求时,参数在URL中显示,而使用Post方式,则不会显示出来

2.使用Get请求发送数据量小,Post请求发送数据量大

以上所述是小编给大家介绍的在Ajax中使用get和post所遇到的问题及解决办法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

到此这篇关于在Ajax中使用get和post所遇到的问题及解决办法就介绍到这了。最后深深祝福牧护关中学越来越辉煌,祝福牧护关中学的全体师生,新学期一切好运,一切顺利,一切的一切称心如意!亲爱的同学们,当上课的铃声清脆地响起,当崭新的课本一页页翻开,当琅琅的读书声响遍校园,我们又回到了阔别已久的校园,开始了新的学习生活。在这里,送给同学们四句诗,与同学们共勉。更多相关在Ajax中使用get和post所遇到的问题及解决办法内容请查看相关栏目,小编编辑不易,再次感谢大家的支持!

您可能有感兴趣的文章
Servlet 与 Ajax 交互一直报status=parsererror的解决办法

Ajax跨域请求COOKIE无法带上的完美解决办法

IE8下Ajax缓存问题及解决办法

Ajax传输中文乱码问题的解决办法

Ajax提交Form表单页面仍会刷新问题的快速解决办法