转自https://blog.csdn.net/u011162260/article/details/44876421
HTTP URL (URL是一种特殊类型的URI,包含了用于查找某个资源的足够的信息)的格式如下:
http://host[":"port][abs_path]
http表示要通过HTTP协议来定位网络资源;host表示合法的Internet主机域名或者IP地址;port指定一个端口号,为空则使用缺省端口 80;abs_path指定请求资源的URI;如果URL中没有给出abs_path,那么当它作为请求URI时,必须以“/”的形式给出,通常这个工作 浏览器自动帮我们完成。
GET和POST方法的比较:
①:GET:主要用来向服务器请求资源
POST:在URL标识的资源后附加新的数据
②:GET是在请求的URL中发送的,POST是在请求的HTTP消息主体中发送的。
③:GET会受限制,GET方法在URL中,但是URL的最大长度是2048个字符,因此长度会受到限制;POST数据在消息主体中,因此长度没有限制。
④:浏览器的后退或者刷新时,POST数据会被重新提交。
转自https://www.cnblogs.com/XJJD/p/7674007.html
HTTP协议格式:
HTTP请求:
<request line> //http请求行,说明请求类型、要访问的资源以及使用的HTTP版本。
<headers> //http请求消息报头,服务器要使用的附加信息。
<blank line> //回车换行,不会发生边界问题。
[<request-body>] //http请求正文
GET提交,请求的数据会附在URL之后,以?分割URL和传输数据,多个参数用&连接。
POST提交:把提交的数据放置在HTTP包的消息体。
所以GET提交的数据会在地址栏中显示出来,而POST提交不会。
HTTP响应:
<status line> //http响应状态行,提供一个状态码来说明所请求的资源情况
<headers> //http响应消息报头
<blank line> //回车换行
[<response-body>] //http响应正文
常用的状态码有:
200:找到了该资源,并且一切正常。
304:该资源在上次请求之后没有任何修改。通常用于浏览器的缓存机制。
401:客户端无权访问该资源。
403:客户端未能获得授权。
404:指定位置不存在所申请的资源。