HTTP协议

一、HTTP协议:超文本传输协议,一种网络传输协议。基于TCP/IP协议来传输数据。

二、HTTP协议工作于 客户端-服务端 架构之上。

       1. 一个HTTP"客户端"是一个应用程序(Web浏览器或其他任何客户端)

       问:浏览器能发送HTTP协议,HTTP协议一定要浏览器来发送吗?

       答:不是,HTTP既然是一种协议,那么只要满足这种协议,什么工具都可以发。cmd-telnet

       2.“服务器”也是一个应用程序。通常为WEB服务。Apache,Nginx,IIS

       3.当你打开一个页面时,发生了什么?

          1)0:原始状态:客户端和服务器之间没有关系

          2)客户端建立连接,发送请求(连接:网络上的虚拟电路)

          3)WEB服务器根据收到的请求,沿着连接,向客户端发送响应信息。

          4)客户端收到响应信息,二者断开连接

       4.HTTP默认端口是80

三、HTTP消息结构

       1.客户端请求消息结构:

 

       请求行(请求方法 路径 协议 )     

       请求头(格式为 key:value )                            

       空行  (头信息和主体数据的区分标志,一定有)

       请求数据(可选)

 

       例:

       POST /0606/02.php HTTP/1.1

       Host:localhost

       Content-type:application/x-www-form-urlencode

       Content-length:5

 

        Age=3

 

 

       2.服务器响应消息结构

 

       响应行(协议 状态码 状态文字)   

       响应头(格式为 key:value)            

       空行

       响应正文(可能没有)

 

       例:

       HTTP/1.1 200 OK

       Content-type:text/html

       Content-Length:5

 

       Hello

 

 

       一般而言,GET请求是不建议加主体的,可能会导致出现错误。GET最基础最广泛的用法是向服务器请求内容,GET请求的参         数拼接在url后面。对GET请求安全性的预期是低于POST请求的。

 

四、请求方法有哪些?

       GET POST HEAD PUT DELETE TRACE OPTIONS

 

       HEAD:和GET基本一致,只是不返回响应体。

       比如我们只是确认一个内容(比如照片)还正常存在,不需要返回照片的内容,这时用HEAD比较合适

 

       TRACE:回显服务器收到的请求,主要用于测试或诊断。

 

        OPTIONS:是返回服务器可用的请求方法。

 

        有些请求是HTTP协议里规定的,但是服务器未必allow。

 

五、状态码,状态文字

       状态码 是用来反映服务器响应情况的。

       最常见的如 200 OK,400 NOT FOUND

       状态文字是用来描述状态码的,便于人观察

状态码

定义

说明

1XX

信息

接收到请求,继续处理

2XX

成功

操作成功收到,理解和接收

3XX

重定向

为了完成请求,必须采取进一步措施

4XX

客户端错误

请求包含语法错误或无法完成请求

5XX

服务器错误

服务器在处理请求的过程中发生了错误

 

       200 服务器成功返回网页

       301/2 永久/临时重定向

       304 Not Modified 未修改

       307 重定向中保持原有的请求数据

 

       失败的状态码

       404 请求的网页不存在

       503 服务器暂时不可用

       500 服务器内部错误

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值