AJAX 学习笔记[三] get 与post 模式的区别
来源:互联网 发布:floyd算法输出路线 编辑:程序博客网 时间:2024/05/16 07:00
如果是get 模式的请求,则将传递参数通过URL 地址发送到服务器端;
如果是post 模式的请求,则将传递参数通过send( ) 方法发送到服务器端(并且必须设置请求文件头);
post 模式的代码如下:
<script type="text/javascript"> <!-- var queryString = "firstName=xugang&birthday=1227"; var url = "9-3.aspx?timetamp=" + new Date().getTime(); xmlHttp.open("POST",url); xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); xmlHttp.send(queryString); //该语句负责发送数据 //--> </script>
一个演示get 模式与post 模式区别的示例:
客户端(9-3.html)
代码示例:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html><head><title>GET VS. POST</title><script language="javascript">var xmlHttp;function createXMLHttpRequest(){ if(window.ActiveXObject) xmlHttp = new ActiveXObject("Microsoft.XMLHttp"); else if(window.XMLHttpRequest) xmlHttp = new XMLHttpRequest();}function createQueryString(){ var firstName = document.getElementById("firstName").value; var birthday = document.getElementById("birthday").value; var queryString = "firstName=" + firstName + "&birthday=" + birthday; return encodeURI(encodeURI(queryString)); //两次编码解决中文乱码问题}// GET 模式function doRequestUsingGET(){ createXMLHttpRequest(); var queryString = "9-3.aspx?"; queryString += createQueryString() + "×tamp=" + new Date().getTime(); xmlHttp.onreadystatechange = handleStateChange; xmlHttp.open("GET",queryString); xmlHttp.send(null);}// POST 模式function doRequestUsingPOST(){ createXMLHttpRequest(); var url = "9-3.aspx?timestamp=" + new Date().getTime(); var queryString = createQueryString(); xmlHttp.open("POST",url); xmlHttp.onreadystatechange = handleStateChange; xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); xmlHttp.send(queryString);}function handleStateChange(){ if(xmlHttp.readyState == 4 && xmlHttp.status == 200){ var responseDiv = document.getElementById("serverResponse"); responseDiv.innerHTML = decodeURI(xmlHttp.responseText); //解码 }}</script></head> <body><h2>输入姓名和生日</h2><form> <input type="text" id="firstName" /><br> <input type="text" id="birthday" /></form><form> <input type="button" value="GET" onclick="doRequestUsingGET();" /><br> <input type="button" value="POST" onclick="doRequestUsingPOST();" /></form><div id="serverResponse"></div></body></html>
服务器端(9-3.aspx)
代码示例:
<%@ Page Language="C#" ContentType="text/html" ResponseEncoding="gb2312" %><%@ Import Namespace="System.Data" %><% if(Request.HttpMethod == "POST") Response.Write("POST: " + Request["firstName"] + ", your birthday is " + Request["birthday"]); else if(Request.HttpMethod == "GET") Response.Write("GET: " + Request["firstName"] + ", your birthday is " + Request["birthday"]);%>
通常在数据不多,并且不敏感的时候,使用get 模式的请求;
而数据量大,或者数据敏感的时候,使用post 模式的请求。
作者: XuGang 网名:钢钢出处: http://xugang.cnblogs.com声明: 本文版权归作者和博客园共有。转载时必须保留此段声明,且在文章页面明显位置给出原文连接地址
- AJAX 学习笔记[三] get 与post 模式的区别
- AJAX 学习笔记[三] get 与post 模式的区别
- AJAX 学习笔记(4) GET与POST
- jQuery ajax get与post的区别
- AJAX POST 与 GET 的区别 && HTTP
- AJAX中GET与POST的区别
- 笔记----Ajax的get与post
- ajax get与post区别
- AJAX教程系列三:get与post区别
- 学习笔记 post和get的区别
- Ajax的get和post模式的区别
- 学习笔记:get与post的区别,请求转发与请求重定向的区别
- Jquery的 AJAX中 POST与GET之间的区别
- ajax 中post与get方法提交的区别
- Ajax中Get请求与Post请求的区别
- Ajax中Get请求与Post请求的区别
- Ajax中Get请求与Post请求的区别
- Ajax中Get请求与Post请求的区别
- 23种设计模式(3):抽象工厂模式
- Java 泛型数组
- 高质量程序设计指南-c/c++ 体会(1)
- C++强大背后
- Qt mplayer 的使用
- AJAX 学习笔记[三] get 与post 模式的区别
- 单链表问题全集OK
- Cocos2d-X游戏开发之Sprite纹理的大小限制
- 技巧:快速提高 Vi/Vim 使用效率的原则与途径
- 黑马程序员————集合框架1(day14)
- LinkList与ArrayList
- Ibatis XML 配置文件报错误及解决方案
- C的数据类型
- 将本地数据库复制到沙盒里