学习-HTTP

HTTP 简介

HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。

HTTP是一个基于 TCP/IP 通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。


HTTP 工作原理

HTTP协议工作于客户端-服务端架构上。浏览器作为HTTP客户端通过URL向HTTP服务端即WEB服务器发送所有请求。
Web服务器有:Apache服务器,IIS服务器(Internet Information Services)等。
Web服务器根据接收到的请求后,向客户端发送响应信息。
HTTP默认端口号为80,但是你也可以改为8080或者其他端口。

HTTP 消息结构

客户端请求消息

请求行(request line)、请求头部(header)、空行和请求数据四个部分组成

服务端响应消息

HTTP响应也由四个部分组成,分别是:状态行、消息报头、空行和响应正文

实例

客户端请求:

GET /hello.txt HTTP/1.1
User-Agent: curl/7.16.3 libcurl/7.16.3 OpenSSL/0.9.7l zlib/1.2.3
Host: www.example.com
Accept-Language: en, mi
POST / HTTP1.1
Host:www.wrox.com
User-Agent:Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022)
Content-Type:application/x-www-form-urlencoded
Content-Length:40
Connection: Keep-Alive

name=Professional%20Ajax&publisher=Wiley

服务端响应:

HTTP/1.1 200 OK
Date: Mon, 27 Jul 2009 12:28:53 GMT
Server: Apache
Last-Modified: Wed, 22 Jul 2009 19:15:56 GMT
ETag: "34aa387-d-1568eb00"
Accept-Ranges: bytes
Content-Length: 51
Vary: Accept-Encoding
Content-Type: text/plain

HTTP 方法

一个URL地址,它用于描述一个网络上的资源,而HTTP中的GET,POST,PUT,DELETE就对应着对这个资源的 查,改,增,删 4个操作.

https://www.cnblogs.com/haore…
https://www.cnblogs.com/cheng…
https://www.cnblogs.com/wuyun…


GET   从指定的资源请求数据
HEAD   与 GET 相同,但只返回 HTTP 报头,不返回文档主体
POST   向指定的资源提交要被处理的数据
PUT   将来自客户端的数据存储到一个命名的服务器资源中去
DELETE   删除指定资源
CONNECT   把请求连接转换到透明的 TCP/IP 通道
OPTIONS   返回服务器支持的 HTTP 方法
TRACE   沿着到目标资源的路径执行一个消息环回测试
PATCH   用于对资源应用部分修改

GET 和 POST

https://zhuanlan.zhihu.com/p/…

HTTP 与 HTTPS 的区别

HTTPS: 安全的超文本传输协议(HyperText Transfer Protocol Secure)
其实HTTPS就是在常规的 TCP 协议层之上加入了一层 TLS 或者 SSL 协议。

区别:

  1. HTTP 是明文传输,HTTPS 通过 SSL、TLS 进行了加密
  2. HTTP 和 HTTPS 使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443
  3. HTTPS 需要到 CA 申请证书,一般免费证书很少,需要交费
  4. HTTP 的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全

HTTPS 的缺陷

  • 通信的速度变慢,由于需要加密,一个握手就多了好几个往返
  • 对用户的机器负载的增加。

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理