Jquery AJAX POST与GET之间的区别


Posted in Javascript onNovember 14, 2013

1:GET访问 浏览器 认为 是等幂的
就是 一个相同的URL 只有一个结果[相同是指 整个URL字符串完全匹配]
所以 第二次访问的时候 如果 URL字符串没变化 浏览器是 直接拿出了第一次访问的结果

POST则 认为是一个 变动性 访问 (浏览器 认为 POST的提交 必定是 有改变的)

防止 GET 的 等幂 访问 就在URL后面加上 ?+new Date();,[总之就是使每次访问的URL字符串不一样的]

设计WEB页面的时候 也应该遵守这个原则

2:一.谈Ajax的Get和Post的区别

Get方式:
用get方式可传送简单数据,但大小一般限制在1KB下,数据追加到url中发送(http的header传送),也就是说,浏览器将各个表单字段元素及其数据按照URL参数的格式附加在请求行中的资源路径后面。另外最重要的一点是,它会被客户端的浏览器缓存起来,那么,别人就可以从浏览器的历史记录中,读取到此客户的数据,比如帐号和密码等。因此,在某些情况下,get方法会带来严重的安全性问题。

Post方式:
当使用POST方式时,浏览器把各表单字段元素及其数据作为HTTP消息的实体内容发送给Web服务器,而不是作为URL地址的参数进行传递,使用POST方式传递的数据量要比使用GET方式传送的数据量大的多。

总之,GET方式传送数据量小,处理效率高,安全性低,会被缓存,而POST反之。

使用get方式需要注意:
1 对于get请求(或凡涉及到url传递参数的),被传递的参数都要先经encodeURIComponent方法处理.例:var url = "update.php?username=" +encodeURIComponent(username) + "&content=" +encodeURIComponent

(content)+"&id=1" ;

使用Post方式需注意:
1.设置header的Context-Type为application/x-www-form-urlencode确保服务器知道实体中有参数变量. 通常使用XmlHttpRequest对象的SetRequestHeader("Context-Type","application/x-www- form-urlencoded;")。例:

xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
2.参数是名/值一一对应的键值对,每对值用&号隔开.如 var name=abc&sex=man&age=18,注意var name=update.php?

abc&sex=man&age=18以及var name=?abc&sex=man&age=18的写法都是错误的;
3.参数在Send(参数)方法中发送,例: xmlHttp.send(name); 如果是get方式,直接 xmlHttp.send(null);

4.服务器端请求参数区分Get与Post。如果是get方式则$username = $_GET["username"]; 如果是post方式,则$username = $_POST["username"];

AJAX乱码问题

产生乱码的原因:
1、xtmlhttp 返回的数据默认的字符编码是utf-8,如果客户端页面是gb2312或者其它编码数据就会产生乱码
2、post方法提交数据默认的字符编码是utf-8,如果服务器端是gb2312或其他编码数据就会产生乱码

解决办法有:
1、若客户端是gb2312编码,则在服务器指定输出流编码
2、服务器端和客户端都使用utf-8编码

gb2312:header('Content-Type:text/html;charset=GB2312');

utf8:header('Content-Type:text/html;charset=utf-8');

注意:如果你已经按上面的方法做了,还是返回乱码的话,检查你的方式是否为get,对于get请求(或凡涉及到url传递参数的),被传递的参数都要先经 encodeURIComponent方法处理.如果没有用encodeURIComponent处理的话,也会产生乱码.

Javascript 相关文章推荐
javascript Prototype 对象扩展
May 15 Javascript
Javascript 面向对象 继承
May 13 Javascript
javascript开发技术大全-第1章javascript概述
Jul 03 Javascript
基于jQuery实现的百度导航li拖放排列效果,即时更新数据库
Jul 31 Javascript
JavaScript定时器详解及实例
Aug 01 Javascript
Js判断参数(String,Array,Object)是否为undefined或者值为空
Nov 04 Javascript
js中的时间转换—毫秒转换成日期时间的示例代码
Jan 26 Javascript
js树插件zTree获取所有选中节点数据的方法
Jan 28 Javascript
jQuery判断数组是否包含了指定的元素
Mar 10 Javascript
jQuery EasyUI中DataGird动态生成列的方法
Apr 05 Javascript
使用js获取地址栏参数的方法推荐(超级简单)
Jun 14 Javascript
Vue内部渲染视图的方法
Sep 02 Javascript
Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结
Nov 14 #Javascript
JS正则表达式大全(整理详细且实用)
Nov 14 #Javascript
JS中typeof与instanceof之间的区别总结
Nov 14 #Javascript
jQuery探测位置的提示弹窗(toolTip box)详细解析
Nov 14 #Javascript
使用jQuery解决IE与FireFox下createElement方法的差异
Nov 14 #Javascript
浅析用prototype定义自己的方法
Nov 14 #Javascript
Js nodeType 属性全面解析
Nov 14 #Javascript
You might like
如何使用“PHP” 彩蛋进行敏感信息获取
2013/08/07 PHP
PHP实现数组array转换成xml的方法
2016/07/19 PHP
基于laravel缓冲cache的用法详解
2019/10/23 PHP
Javascript select下拉框操作常用方法
2009/11/09 Javascript
js中设置元素class的三种方法小结
2011/08/28 Javascript
JavaScript操纵窗口的方法小结
2013/06/28 Javascript
JavaScript闭包实例讲解
2014/04/22 Javascript
js获取 type=radio 值的方法
2014/05/09 Javascript
Javascript小技能总结(推荐)
2016/06/02 Javascript
JS中使用mailto实现将用户在网页中输入的内容传递到本地邮件客户端
2016/10/08 Javascript
微信小程序 条件渲染详解
2016/10/09 Javascript
对象不支持indexOf属性或方法的解决方法(必看)
2017/05/28 Javascript
浅谈vue项目优化之页面的按需加载(vue+webpack)
2017/12/11 Javascript
vue element-ui table表格滚动加载方法
2018/03/02 Javascript
jquery 验证用户名是否重复代码实例
2019/05/14 jQuery
小程序实现层叠卡片滑动效果
2019/08/26 Javascript
JS表单验证插件之数据与逻辑分离操作实例分析【策略模式】
2020/05/01 Javascript
vue created钩子函数与mounted钩子函数的用法区别
2020/11/05 Javascript
Python 错误和异常小结
2013/10/09 Python
python抽取指定url页面的title方法
2018/05/11 Python
Scrapy-Redis结合POST请求获取数据的方法示例
2019/05/07 Python
python django下载大的csv文件实现方法分析
2019/07/19 Python
Python使用mongodb保存爬取豆瓣电影的数据过程解析
2019/08/14 Python
Python+OpenCV 实现图片无损旋转90°且无黑边
2019/12/12 Python
Python基础之函数基本用法与进阶详解
2020/01/02 Python
pytorch 模拟关系拟合——回归实例
2020/01/14 Python
Django Path转换器自定义及正则代码实例
2020/05/29 Python
Python numpy矩阵处理运算工具用法汇总
2020/07/13 Python
python+playwright微软自动化工具的使用
2021/02/02 Python
仿酷狗html5手机音乐播放器主要部分代码
2013/05/15 HTML / CSS
加拿大领先的牛仔零售商:Bluenotes
2018/01/22 全球购物
安全生产责任书
2014/03/12 职场文书
入党自我鉴定
2014/03/25 职场文书
詹天佑教学反思
2014/04/30 职场文书
五年级学生期末评语
2014/12/26 职场文书
导游词之西安大清真寺
2019/12/17 职场文书