1,请求方式、
2,注意点
3,区别
4,缓存
等
一:GET访问 浏览器 认为 是等幂的
就是 一个相同的URL 只有一个结果[相同是指 整个URL字符串完全匹配]
所以 第二次访问的时候 如果 URL字符串没变化 浏览器是 直接拿出了第一次访问的结果
POST则 认为是一个 变动性 访问 (浏览器 认为 POST的提交 必定是 有改变的)
防止 GET 的 等幂 访问 就在URL后面加上 ?+new Date();,[总之就是使每次访问的URL字符串不一样的]
二.谈Ajax的Get和Post的区别
Get方式:
用get方式可传送简单数据,但大小一般限制在1KB下,数据追加到url中发送(http的header传送),也就是说,浏览器将各个表单字段元素及其数据按照URL参数的格式附加在请求行中的资源路径后面。另外最重要的一点是,它会被客户端的浏览器缓存起来,那么,别人就可以从浏览器的历史记录中,读取到此客户的数据,比如帐号和密码等。因此,在某些情况下,get方法会带来严重的安全性问题。
Post方式:
当使用POST方式时,浏览器把各表单字段元素及其数据作为HTTP消息的实体内容发送给Web服务器,而不是作为URL地址的参数进行传递,使用POST方式传递的数据量要比使用GET方式传送的数据量大的多。
总之,GET方式传送数据量小,处理效率高,安全性低,会被缓存,而POST反之。
三,使用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"];
三,Post和Get 方法有如下区别:
1.Post传输数据时,不需要在URL中显示出来,而Get方法要在URL中显示。
2.Post传输的数据量大,可以达到2M,而Get方法由于受到URL长度的限制,只能传递大约1024字节.
3.Post顾名思义,就是为了将数据传送到服务器段,Get就是为了从服务器段取得数据.而Get之所以也能传送数据,只是用来设计告诉服务器,你到底需要什么样的数据.Post的信息作为http请求的内容,而Get是在Http头部传输的。
get 方法用Request.QueryString["strName"]接收
post 方法用Request.Form["strName"] 接收
注意:
虽然两种提交方式可以统一用Request("strName")来获取提交数据,但是这样对程序效率有影响,不推荐使用。
一般来说,尽量避免使用Get方式提交表单,因为有可能会导致安全问题
最后说一下,本人在开发中遇到的问题,,
项目是离职的人留下来的,
测试说有一个问题:有时候会添加记事的时候日历上没有显示,但是其实是添加成功的。
最后调试bug,chrome下可以,而在ie下确实也存在这样的问题。
最后发现是因为我的数据请求用的是get方式,所以在ie下被缓存了。
如果不需要缓存,要加上cache:false
或者说使用post方式请求。。。
相关推荐
Ajax中Get请求和Post请求的区别 简单例子 何时使用Get请求,何时使用Post请求
学习ajax技术的时候,很多同学对于ajax中get与post请求总是疑问不解
Ajax Get、Post请求 Ajax Get、Post请求 Ajax Get、Post请求
服务端模拟ajax,支持发起GET、POST、PUT、DELETE请求
AJAX POST与get提交数据的差别,喜欢了解详细内容的朋友可以下载学习!
Java 模拟Ajax POST GET 提交代码,实测很好用。
ajax简易模型 兼容多个浏览器(ff ie ...) get post请求
function Ajax(url,method,parameter,onSuccess,onError,onLoad){ this.xmlHttp=null; this.url=url; this.method=method; this.parameter=parameter; this.success=onSuccess?onSuccess:null; this.error=on...
Ajax的小封装对ajax的get请求的小封装.
比如我们经常这样写一个ajax的post请求: $.ajax({ type: "post", // post or get contentType:"application/json;charset=utf-8", data: “requestTag=”+tag+"&content="+content, //请求参数 url: "po
主要介绍了原生 JS Ajax,GET和POST 请求实例代码的相关资料,非常不错具有参考借鉴价值,需要的朋友可以参考下
本项目使用了jQuery的get/post两种方法提交Json格式的数据到后台,后台再把Json格式的数据传到前台。实现了JSON字符串和JSON对象之间的转换。
图书馆页面添加删除修改
谈Ajax的Get和Post的区别 Get方式: 用get方式可传送简单数据,但大小一般限制在1KB下,数据追加到url中发送(http的header传送),也就是说,浏览器将各个表单字段元素及其数据按照URL参数的格式附加在请求行中的...
调用微信公众平台接口 需要用到CURL(相当于ajax) 访问接口返回数据 页面不刷新 此文件封装了调用curl执行get|post请求 返回相应的数据
get如果请求url没有变化,取出缓存,提高效率;请求会缓存到浏览器中,可以通过历史记录查看用户信息,安全性低; post传送变化的数据显示,变动性访问; get通过url地址传送数据,数据量不能超过1024byte; post...
下面小编就为大家带来一篇深入理解Ajax的get和post请求。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
一般我们在开发中经常会用到Ajax请求,异步发送请求,然后获取我们想要的数据,在Ajax中使用Get请求数据不会有页面缓存的问题,而使用POST请求可是有时候页面会缓存我们提交的信息,导致我们发送的异步请求不能...