复习之 get和post方法

复习之 get和post方法

get()和post()是对Http(超文本传输协议)的两种请求方法。

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

1.GET 基本上用于从服务器获得(取回)数据。注释:GET 方法可能返回缓存数据。
2.POST 也可用于从服务器获取数据。不过,POST 方法不会缓存数据,并且常用于连同请求一起发送数据。

什么时候用GET,什么时候用POST方法呢?

原文地址如下:http://bu-choreography.iteye.com/admin/blogs/new。翻译总结如下:
-1.如下情况使用GET方法:客户端与服务端的交互像是一个提问(如查询操作、搜索操作、读操作)

2.如下情况使用POST方法:
1.交互是一个命令或订单(order),比提问包含更多信息
2.交互改变了服务器端的资源并被用户察觉,例如订阅某项服务
3.用户需要对交互产生的结果负责

根据HTTP协议规定,GET方法可以携带交互需要的所有数据,因此你会看到搜索百度或谷歌的时候,点击搜索形成的URL包含了你刚才的搜索关键字,没有安全需求的请求把信息放URL里没关系,但是你访问银行网站的时候,不希望把账户、密码这些放在URL里被人拦截是吧,所以HTTP设计了POST请求,他可以把请求信息放在HTTP请求里,具体格式这里不细说了,这样你就不能简单的从URL里找到账户、密码了。

比如:
get方法:查询字符串(名称/值对)是在 GET 请求的 URL 中发送的:
/test/demo_form.asp?name1=value1&name2=value2

post方法:查询字符串(名称/值对)是在 POST 请求的 HTTP 消息主体中发送的:
/test/demo_form.asp#

由此可见:
get和post方法的区别在于一个有缓存一个没有缓存,get方法会把我们浏览的界面一一缓存显示在URL网址中,可能会包括我们所输入的用户名和密码,安全性不高,而post没有缓存,安全性能要高一些。

get/post方法的主要区别

一般的区别:

1.post更安全(不会作为url的一部分,不会被缓存、保存在服务器日志、以及浏览器浏览记录中)

2.post发送的数据量更大(get有url长度限制)

3.post能发送更多的数据类型(get只能发送ASCII字符)

4.post比get慢

get和post的比较

这里写图片描述

JQuery中AJAX的get和post的使用
本例子是用于与servlet操作登录的例子,之放部分代码:
    <script type="text/javascript">
    $(function(){
        $('.tableBtn').click(function() {
        var userName=$('input[name=userName]').val();
        var password=$('input[name=password]').val();
        // alert(userName+"_"+password);
        // 异步提交
        $.ajax({
            type: 'get',//可改为post
            url: 'Loginservlet',
            data: {
                keyUserName:userName,
                keypassword:password
            },
            //回调函数通用的方法
            success:function(data){
               // alert(data);
                $('#result span').text(data);
            }
        });  
        });
    });
    </script>

可看到这个属性:
type: ‘get’,//可改为post

本文参考:
W3school:http://www.w3school.com.cn/index.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值