HTTP 方法:GET与POST
两个最常用的HTTP方法:GET和POST。
HTTP是什么?
超文本传输协议(HTTP)的目的是使客户端和服务器之间的通信。
HTTP客户端和服务器之间的请求 - 响应协议。
可能是客户端Web浏览器,可能是服务器的计算机上承载网站的应用程序。
例如:客户端(浏览器)提交的HTTP请求到服务器,然后服务器返回一个响应给客户端。响应中包含有关请求和状态信息也可以被请求的内容。
两个HTTP请求方法:GET和POST
两种常用的方法是:客户端和服务器之间的请求 - 响应GET和POST。
- GET -从指定的资源请求数据
- POST -提交待处理数据到指定的资源
GET方法
需要注意的是发送一个GET请求的URL查询字符串(名称/值对):
/test/demo_form.asp?name1=value1&name2=value2
GET请求的一些其他注意事项:
- GET请求可以被缓存
- GET请求留在浏览器历史记录
- GET请求可以被保存为书签
- GET请求不应该被用来处理敏感数据时,
- GET请求有长度限制
- GET请求,应只用于检索数据
POST方法
注意:在HTTP消息主体的POST请求发送的查询字符串(名称/值对):
POST /test/demo_form.asp HTTP/1.1
Host: w3schools.com
name1=value1&name2=value2
Host: w3schools.com
name1=value1&name2=value2
在POST请求的一些其他注意事项:
- POST请求是不会被缓存
- POST请求不留在浏览器历史记录
- POST请求不能书签
- POST请求的数据长度没有限制
比较GET与POST
下表比较了两种HTTP方法:GET和POST。
BACK按钮/重载 | 无害 | 数据将被重新提交(浏览器应该提醒用户重新提交的数据) |
书签 | 可以加书签 | 无法添加书签 |
缓存 | 可以缓存 | 不缓存 |
编码类型 | 应用程序/ x - www的形式,进行了urlencoded | 应用程序/ x - www的形式,进行了urlencoded的multipart / form-data的。使用多编码的二进制数据 |
历史 | 参数保持在浏览器历史记录 | 参数不保存在浏览器历史记录 |
数据长度的限制 | 是的,当发送数据时,GET方法将数据添加到的URL和一个URL的长度是有限的(URL最大长度为2048个字符) | 没有限制 |
数据类型的限制 | 只有ASCII字符 | 没有任何限制。二进制数据,也允许 |
安全 | 相比POST,GET安全性较差,发送数据的URL 发送密码或其他敏感信息时,切勿使用GET! |
POST比GET更安全一点,因为参数不是存储在浏览器历史记录或在Web服务器日志 |
能见度 | 数据是每个人都在URL中可以看到 | 数据没有显示在URL中, |
相关推荐
Delphi两种方法演示HTTP请求:GET/POST方法使用演示,程序将演示使用这两种方法建立会话、建立一个http请求句柄、发送一个指定请求到httpserver、接收header信息和一个http请求、指向一个接收请求信息的缓冲区的指针...
HTTP:Get传输方式与Post传输方式的区别
超文本传输协议(HTTP)的设计目的是保证客户机与服务器之间的...在客户机和服务器之间进行请求-响应时,两种最常被用到的方法是:GET 和 POST。 GET - 从指定的资源请求数据。 POST - 向指定的资源提交要被处理的数据
HttpTest: GET POSTHttpTest: GET POST
HTTP定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETE。URL全称是资源描述符。我们可以这样认为:?一个URL地址,它用于描述一个网络上的资源,而HTTP中的GET,POST,PUT,DELETE就...
bool RequestJsonInfo( const std::string& strUrl,HttpRequest type = Hr_Post, std::string lpHeader = "", std::string lpPostData = "",DWORD dwTimeOut=5000); void ConnectAndRecv(const std::string &lpUrl,...
用于get请求与post请求测试代码
HTTP协议GET和POST使用区别 GET和POST使用区别 在客户机和服务器之间进行请求-响应时,两种最常被用到的方法是:GET 和 POST。 GET - 从指定的资源请求数据。 POST - 向指定的资源提交要被处理的数据。 1、GET和POST...
本文针对网页开发中使用Http协议中POST和GET方法的区别进行了讨论,希望对大家有帮助
Web应用安全:Get、POST参数越权.pptx
框架主要包括:Get请求、Post请求、文件上传、文件下载。效果图及讲解见:https://blog.csdn.net/ahuyangdong/article/details/82760382。github源码:https://github.com/ahuyangdong/RetrofitFrame
C++ 实现 HTTP HTTPS POST GET(包含curl版本和winhttp两种实现)。 玩过抓包,网络协议分析的朋友肯定都知道http https post get,web端和用户的交互主要是通过post get完成的。 我这里有两种实现: 1:libcurl实现的...
详细介绍了HTTP中Get与Post的区别与联系。
PHP 中的get与 post 方法的区别
解剖协议get与post方法的差别 HTTP协议
http协议get与post请求方式的区别
Ajax中Get请求和Post请求的区别 简单例子 何时使用Get请求,何时使用Post请求
示例:System.out.println(SimpleString.getString(SimpleHttpGet.getInputStream("http://www.baidu.com", null)));
LINUX C 下HTTP处理函数的POST以及GET的处理接口实现方法
1.一个简单的关于 HTTP GET,POST的简单实例 第一个方法是get 第二个是POST