最近一段时间开始入手前端页面和后端功能的编写,对于get和post请求,只知些许的皮毛,现在综合网上的一些文案,做一下总结。

1、HTTP 请求:GET vs. POST

两种在客户端和服务器端进行请求-响应的常用方法是:GET 和 POST。

  • GET - 从指定的资源请求数据
  • POST - 向指定的资源提交要处理的数据

GET 基本上用于从服务器获得(取回)数据。注释:GET 方法可能返回缓存数据。

POST 也可用于从服务器获取数据。不过,POST 方法不会缓存数据,并且常用于连同请求一起发送数据

下面的表格比较了两种 HTTP 方法:GET 和 POST。

  GET POST
后退按钮/刷新 无害 数据会被重新提交(浏览器应该告知用户数据会被重新提交)。
书签 可收藏为书签 不可收藏为书签
缓存 能被缓存 不能缓存
编码类型 application/x-www-form-urlencoded application/x-www-form-urlencoded 或 multipart/form-data。为二进制数据使用多重编码。
历史 参数保留在浏览器历史中。 参数不会保存在浏览器历史中。
对数据长度的限制 是的。当发送数据时,GET 方法向 URL 添加数据;URL 的长度是受限制的(URL 的最大长度是 2048 个字符)。 无限制。
对数据类型的限制 只允许 ASCII 字符。 没有限制。也允许二进制数据。
安全性

与 POST 相比,GET 的安全性较差,因为所发送的数据是 URL 的一部分。

在发送密码或其他敏感信息时绝不要使用 GET !

POST 比 GET 更安全,因为参数不会被保存在浏览器历史或 web 服务器日志中。
可见性 数据在 URL 中对所有人都是可见的。 数据不会显示在 URL 中。

2、HTTP 请求实体

定义和用法

$.get() 方法使用 HTTP GET 请求从服务器加载数据。


实例

请求 "test.php",但是忽略返回结果:

$.get("test.php");

请求 "test.php" 并连同请求发送一些额外的数据(忽略返回结果):

$.get("test.php", { name:"Donald", town:"Ducktown" });

请求 "test.php" 并传递数据数组到服务器(忽略返回结果):

$.get("test.php", { 'colors[]' : ["Red","Green","Blue"] });

请求 "test.php" 并提醒请求的结果:

$.get("test.php", function(data){
alert("Data: " + data);
});

语法

$.get( URL,data,function(data,status,xhr),dataType)
参数 描述
URL 必需。规定您需要请求的 URL。
data 可选。规定连同请求发送到服务器的数据。
function(data,status,xhr) 可选。规定当请求成功时运行的函数。
额外的参数:

  • data - 包含来自请求的结果数据
  • status - 包含请求的状态("success"、"notmodified"、"error"、"timeout"、"parsererror")
  • xhr - 包含 XMLHttpRequest 对象
dataType 可选。规定预期的服务器响应的数据类型。
默认地,jQuery 会智能判断。
可能的类型:

  • "xml" - 一个 XML 文档
  • "html" - HTML 作为纯文本
  • "text" - 纯文本字符串
  • "script" - 以 JavaScript 运行响应,并以纯文本返回
  • "json" - 以 JSON 运行响应,并以 JavaScript 对象返回
  • "jsonp" - 使用 JSONP 加载一个 JSON 块,将添加一个 "?callback=?" 到 URL 来规定回调

实例

请求 test.php 网页,忽略返回值:

$.post("test.php");

通过 AJAX POST 请求改变 div 元素的文本:

$("input").keyup(function(){txt=$("input").val();$.post("demo_ajax_gethint.asp",{suggest:txt},function(result){$("span").html(result);});
});

定义和用法

post() 方法通过 HTTP POST 请求从服务器载入数据。

语法

jQuery.post(url,data,success(data, textStatus, jqXHR),dataType)
参数 描述
url 必需。规定把请求发送到哪个 URL。
data 可选。映射或字符串值。规定连同请求发送到服务器的数据。
success(data, textStatus, jqXHR) 可选。请求成功时执行的回调函数。
dataType

可选。规定预期的服务器响应的数据类型。

默认执行智能判断(xml、json、script 或 html)。

详细说明

该函数是简写的 Ajax 函数,等价于:

$.ajax({type: 'POST',url: url,data: data,success: success,dataType: dataType
});

根据响应的不同的 MIME 类型,传递给 success 回调函数的返回数据也有所不同,这些数据可以是 XML 根元素、文本字符串、JavaScript 文件或者 JSON 对象。也可向 success 回调函数传递响应的文本状态。

前端get和post请求的入门总结相关推荐

  1. 前端技巧培训-后台战友快速入门

    前端技巧培训-后台战友快速入门 一.工具 webstorm/vscode node环境/npm (一般安装node自带安装npm的) 可以安装淘宝镜像(下载依赖包比较快) node安装教程 淘宝镜像安 ...

  2. 02.Web大前端时代之:HTML5+CSS3入门系列~H5结构元素

    Web大前端时代之:HTML5+CSS3入门系列:http://www.cnblogs.com/dunitian/p/5121725.html 1.结构元素 可以理解为语义话标记,比如:以前这么写&l ...

  3. 04. Web大前端时代之:HTML5+CSS3入门系列~HTML5 表单

    Web大前端时代之:HTML5+CSS3入门系列:http://www.cnblogs.com/dunitian/p/5121725.html 一.input新增类型: 1.tel:输入类型用于应该包 ...

  4. 前端框架:AntdUI 文档入门

    目录 前端框架:Ant Design UI 文档入门 官方文档 · 在线地址: Ant Design Pro 版本文档 更多入口:`[如下图所示]` 前端框架:Ant Design UI 文档入门 你 ...

  5. RestAPI的进化之路,后端MVVM模式或许来临,通过观察者模式,后端收集前端的GET类请求,主动推送数据变更到前端

    RestAPI的进化之路,后端MVVM模式或许来临,通过观察者模式,后端收集前端的GET类请求,主动推送数据变更到前端 最近几年,前端MVVM模式彻底变革了前端的开发模式,那这股火焰会烧到后端嘛? 我 ...

  6. 前端学习笔记:Bootstrap框架入门

    前端学习笔记:Bootstrap框架入门 一.Bootstrap概述 1.基本信息 ​Bootstrap,来自 Twitter,是目前很受欢迎的前端框架.Bootstrap 是基于 HTML.CSS. ...

  7. 【web前端特效源码】使用 HTMLCSSJavaScript实现各种跳跃浮动慢跑翻转旋转坠落的魔幻文字动画效果~太上头了~/动画效果|前端开发|IT软件开发基础入门教程|网页制作|网站开发定制

    b站视频演示效果: [web前端特效源码]使用 HTML&CSS&JavaScript实现各种跳跃浮动慢跑翻转旋转坠落的魔幻文字动画效果~太上头了~/动画效果|前端开发|IT软件开 效 ...

  8. 高薪程序员面试题精讲系列77之如何防止前端页面重复提交请求?

    一. 面试题及剖析 1. 今日面试题 如何防止前端页面重复提交请求? 如何防止重复提交请求? 2. 题目剖析 今天的面试问题,属于在考察我们应对具体问题时的解决思路和解决办法.这种针对具体业务.寻求解 ...

  9. Hapi.js 起步 - 写给前端开发的 Node Web 框架入门

    为什么选择 Hapi 或许你已经使用过 Express, Koa2 等 Node.js 的 WEB 框架,在构建 WEB 应用程序时,你的工作仅仅是产出 RESTFUL API,或者通过 Node 调 ...

最新文章

  1. 彻底解决兼容问题 Windows 7 安装 Visual C++ 6.0 (VC6) 全程图解
  2. Random Forests
  3. OMG: daily scrum six
  4. 在一台服务器上配置多个Tomcat的方法
  5. .NET 6 预览版 7:新功能已完成 ,将专注于改进
  6. oracle添加表的索引,oracle批量添加指定表前缀的索引SQL语句
  7. python docx 字体大小_Python操作Word的入门教程
  8. 汇编语言---乘法指令及符号扩展
  9. 软件工程学习总结(4)——软件工程概论
  10. 微软亚洲研究院20周年庆典:纳德拉致敬、沈向洋展望
  11. python中使用连续关系运算符_解释一下Python中的关系运算符
  12. 关于Universal-Image-Loader加载同一张图只成功一张的问题
  13. 第三章 PCB 封装库绘制
  14. java 从服务器下载文件并保存到本地
  15. linux选was清除缓存,Linux清除缓存操作
  16. 通过C2progv1.7进行dsp28069串口下载程序
  17. 支持向量机(SVM)优化算法原理超详细证明过程,几何的角度证明互补松弛条件
  18. Bug heroes虫虫英雄······超详细翻译+基本攻略
  19. 医院管理系统mysql课程设计_数据库(课程设计)报告(医院管理系统).doc
  20. js中的函数防抖和函数节流

热门文章

  1. 一个著名的日志系统是怎么设计出来的?
  2. python热成像_3D热成像技术
  3. 【2016年蓝桥杯Java-B组省赛题解】
  4. 企业认证ISO27001的必要性
  5. 「知识点分享」结构光式激光视觉传感器的焊缝跟踪系统
  6. 免费开源证券数据平台
  7. 酷比魔方i10进入BIOS
  8. 一位上海土著 90 后,教你用 Python 赚到人生第一桶金
  9. 基于K-means算法的客户分群知识
  10. ai将会怎样影响计算机的发展,就目前人工智能发展前景将如何影响我们的未来?...