`

Http请求get vs post

阅读更多

       在网站开发的过程中我们经常用到的http请求就是get和post,前端优化中有一条建议说多使用get方式的ajax请求,那么到底是为什么的?在这里,我们先了解一下两种请求方式。

 

get请求方式

 

数据是通过地址栏传递的 ( /test/demo_form.asp?name1=val1&name2=val2)

get请求的其他特点:

1.get请求可以被缓存

2.get请求将会被记录在浏览器历史记录

3.get请求可以保存为书签

4.get请求有长度限制

5.get请求一般被用来获取数据

 

post请求方式

 

数据是通过http message body 传递的

post请求的其他特点:

1.post请求不能被缓存

2.post请求不能被记录在浏览器历史记录中

2.post请求不能被保存为书签

3.post请求没有长度限制

 

get  vs  post

 

   GET  POST
 点击返回按钮或者刷新  无害  数据将会被重新提交
 书签  可以保存为书签  无法保存为书签
 缓存  可以被缓存 无法被缓存 
 编码类型  application/x-www-form-urlencoded  application/x-www-form-urlencoded or multipart/form-data. Use multipart encoding for binary data
 历史记录  被记入历史记录 无法记入历史记录 
 数据传输长度限制  有限制,于浏览器有关  没有限制
 数据类型限制  只能使用ASCII  没有限制,二进制数据也可以
 保密性  数据暴漏在地址栏,不安全(不要使用get方式传递一些敏感信息,比如说用户名,密码)  post比get安全些,因为数据不会保存在浏览器历史记录,或者网络日志
 可见性  数据通过地址栏传输,每个人都可以看到,不安全  数据不是通过地址栏传递

 

我推荐,获取数据用get,传递数据用post

 

 其他http请求

 

方式 描述
HEAD 只返回HTTP headers,不返回document body,其他与get没有什么区别
PUT 上传至制定的URI
DELETE 删除指定的资源
OPTIONS 返回服务器所支持的HTTP方法
CONNECT 将求连接到一个明显的TCP/IP通道

 

英文原文:http://www.w3schools.com/tags/ref_httpmethods.asp

分享到:
评论

相关推荐

    C# http Get/POST请求封装类

    GET和POST是HTTP协议中最常见的两种请求方法,分别用于获取资源和提交数据。本文将详细讨论如何在C#中封装一个用于执行HTTP GET和POST请求的类,以及`HttpHelper.cs`文件中的关键实现。 首先,了解GET和POST的基本...

    VC++ HTTP Get Post请求

    在VC++编程环境中,HTTP(超文本传输协议)Get和Post请求是常见的网络通信方法,用于从或向服务器发送数据。这两个方法是Web应用程序与服务器交互的基础,理解它们的工作原理和如何在VC++中实现至关重要。 **HTTP ...

    基于Labview的HTTP的GET与POST请求示例

    超文本传输协议(HTTP)的...两种 HTTP 请求方法:GET 和 POST 在客户机和服务器之间进行请求-响应时,两种最常被用到的方法是:GET 和 POST。 GET - 从指定的资源请求数据。 POST - 向指定的资源提交要被处理的数据

    http get post 请求模拟器

    HTTP是互联网上应用最为广泛的一种网络协议,GET和POST是HTTP协议中的两种主要请求方法,它们在Web开发中扮演着重要角色。理解这两者的工作原理和区别对于进行网络编程至关重要。 1. GET请求: GET请求是HTTP中最...

    vs2010中应用get,post与http通信实例

    通过上述代码,你可以理解如何在VS2010的C#项目中实现GET和POST请求,以及如何从HTTP响应中读取数据。这个HTTP_Demo压缩包可能包含了这些示例的完整代码,供学习和参考。在实际应用中,你可以根据需求对这些基本示例...

    html页面模式get/post请求

    首先,GET和POST是HTTP协议中的两种主要请求方法。GET通常用于获取资源,它将数据附加到URL上,以查询字符串的形式传递。而POST则常用于向服务器发送数据,如表单提交,数据被包含在请求正文中,这对于传输大量或...

    winform GET请求和POST请求

    在Windows Forms(Winform)应用开发中,GET和POST是两种常见的HTTP请求方法,用于从服务器获取或向服务器发送数据。这两个概念对于任何与Web交互的客户端程序设计都是至关重要的,尤其是在使用C#进行Winform编程时...

    Delphi两种方法演示HTTP请求:GET/POST.rar

    Delphi两种方法演示HTTP请求:GET/POST方法使用演示,程序将演示使用这两种方法建立会话、建立一个http请求句柄、发送一个指定请求到httpserver、接收header信息和一个http请求、指向一个接收请求信息的缓冲区的指针...

    C++实现HTTP GET,POST请求

    本篇文章将详细探讨如何使用C++来实现HTTP GET和POST请求,以及涉及HTTPS的安全连接。 HTTP GET请求是HTTP协议中最基础的操作之一,主要用于从服务器获取资源。GET请求的所有参数都包含在URL中,因此它是透明且可...

    c++ boost asio http get post请求

    在本例中,我们将探讨如何使用Boost.Asio实现HTTP GET和POST请求。 首先,让我们理解GET和POST请求的基本概念。GET是HTTP协议中最常见的请求方法,用于从服务器获取资源。而POST请求通常用于向服务器发送数据,如...

    QT C++ http get、post 同步异步请求

    本项目中,我们关注的是GET和POST两种请求方式,以及它们的同步和异步实现。下面将详细介绍这两种请求方式以及同步与异步的区别。 1. **QT中的HTTP GET请求** GET请求是最常见的HTTP请求类型,用于从服务器获取资源...

    Retrofit网络请求GET请求POST请求

    本教程将深入探讨Retrofit在处理GET和POST请求时的关键知识点。 首先,我们需要理解Retrofit的核心概念:接口(Interface)。在Java编程中,接口定义了方法的签名,而在Retrofit中,这些接口则代表了HTTP请求。例如...

    Java发送HTTP请求GET/POST测试

    总的来说,Java发送HTTP请求GET/POST是网络编程的基础,理解和掌握这些知识对于进行Web服务的开发和集成至关重要。无论是简单的数据获取还是复杂的数据交互,都能通过这些方法实现。通过实践项目,你可以更好地理解...

    VB6Get和POST请求异步处理请求

    在VB6(Visual Basic 6)编程环境中,GET和POST是两种主要的HTTP请求方法,用于从Web服务器获取数据或提交数据。这两种方法在进行网络通信时起着至关重要的作用,尤其是在开发基于Web的应用程序时。然而,在进行同步...

    c# http协议,实现get或post发送请求 并返回内容

    GET和POST是HTTP协议中最常用的两种请求方法。本篇将详细介绍如何在C#中利用HTTP协议实现GET和POST请求,并获取返回的内容。 首先,让我们了解GET和POST的基本概念: 1. GET:GET请求是最常见的HTTP方法,用于从...

    C#实现http协议GET、POST请求

    C#实现http协议GET、POST请求 C#实现http协议GET、POST请求 C#实现http协议GET、POST请求 C#实现http协议GET、POST请求 C#实现http协议GET、POST请求

    C#的http发送post和get请求源码

    在C#编程中,HTTP(超文本传输协议)是用于客户端和服务器之间通信的主要协议,主要涉及GET和POST两种常见的请求方法。本文将详细介绍如何在C#中实现这两种请求,并结合给定的文件名,推测这是一个简单的C#桌面应用...

    C# 使用Get和Post请求获取数据

    在Web开发中,与服务器进行交互的一个关键方法是通过HTTP(超文本传输协议)发送GET和POST请求。这两个方法是HTTP协议中最基本的请求类型,用于从服务器获取或向服务器提交数据。 首先,让我们详细了解GET请求。GET...

    Android中Https请求get和post

    本篇将详细讲解Android中如何使用HTTPS进行GET和POST请求。 首先,HTTPS基于SSL/TLS协议,提供加密处理、服务器身份验证和消息完整性检查等功能。在Android中,我们通常会用到HttpURLConnection或者第三方库如...

Global site tag (gtag.js) - Google Analytics