HTTP协议

1、 HTTP

   HTTP(超文本传输协议)是一个基于请求与响应模式的、无状态的、应用层的协议,常基于TCP的连接方式, 

2、HTTP请求报文与响应报文格式

请求报文包含三部分:
    a、请求行:包含请求方法、URI、HTTP版本信息
    b、请求首部字段
    c、请求内容实体
响应报文包含三部分:
    a、状态行:包含HTTP版本、状态码、状态码的原因短语
    b、响应首部字段
    c、响应内容实体

3、http和https 的区别

    a、通信使用明文不加密,内容可能被窃听
    b、不验证通信方身份,可能遭到伪装
    c、无法验证报文完整性,可能被篡改

    HTTPS就是HTTP加上加密处理(一般是SSL安全通信线路)+认证+完整性保护

    http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。http的连接很

    简单,是无状态的,...

    HTTPS就是HTTP加上加密处理(一般是SSL安全通信线路)+认证+完整性保护

4、http 状态码

    100:指示信息--表示请求已接收,继续处理。
    200:成功--表示请求已被成功接收、理解、接受。
    300:重定向--要完成请求必须进行更进一步的操作。
    400:客户端错误--请求有语法错误或请求无法实现。                                                                                                                   500:服务器端错误--服务器未能实现合法的请求。

5、常用的HTTP方法有哪些?
    GET: 用于请求访问已经被URI(统一资源标识符)识别的资源,可以通过URL传参给服务器
    POST:用于传输信息给服务器,主要功能与GET方法类似,但一般推荐使用POST方式。
    PUT: 传输文件,报文主体中包含文件内容,保存到对应URI位置。
    HEAD: 获得报文首部,与GET方法类似,只是不返回报文主体,一般用于验证URI是否有效。
   DELETE:删除文件,与PUT方法相反,删除对应URI位置的文件。                                                                                             OPTIONS:查询相应URI支持的HTTP方法。

6、GET方法与POST方法的区别
区别一:
      get重点在从服务器上获取资源,post重点在向服务器发送数据;
区别二:
     get传输数据是通过URL请求,以field(字段)= value的形式,置于URL后,并用"?"连接,多个请求数据间用"&"连接,如       http://127.0.0.1/Test/login.action?name=admin&password=admin,这个过程用户是可见的;
 post传输数据通过Http的post机制,将字段与对应值封存在请求实体中发送给服务器,这个过程对用户是不可见的;
区别三:
    Get传输的数据量小,因为受URL长度限制,但效率较高;
    Post可以传输大量数据,所以上传文件时只能用Post方式;
区别四:
   get是不安全的,因为URL是可见的,可能会泄露私密信息,如密码等;
   post较get安全性较高;
区别五:
   get方式只能支持ASCII字符,向服务器传的中文字符可能会乱码。
   post支持标准字符集,可以正确传递中文字符。

7、Http 实现原理 TCP/IP

     互联网的关键技术就是TCP/IP协议。两台计算机之间的通信是通过TCP/IP协议在因特网上进行的。实际上这个是两个协议:

        TCP : Transmission Control Protocol 传输控制协议和 IP: Internet Protocol  网际协议。

        IP:计算机之间的通信

        IP协议是计算机用来相互识别的通信的一种机制,每台计算机都有一个IP.用来在internet上标识这台计算机。  IP 负责在因特网上发送和接收数据包。通过 IP,消息(或者其他数据)被分割为小的独立的包,并通过因特网在计算机之间传送。IP 负责将每个包路由至它的目的地。

        IP协议仅仅是允许计算机相互发消息,但它并不检查消息是否以发送的次序到达而且没有损坏(只检查关键的头数据)。为了提供消息检验功能,直接在IP协议上设计了传输控制协议TCP.

       TCP : 应用程序之间的通信

       TCP确保数据包以正确的次序到达,并且尝试确认数据包的内容没有改变。TCP在IP地址之上引端口(port),它允许计算机通过网络提供各种服务。一些端口号为不同的服务保留,而且这些端口号是众所周知。

       服务或者守护进程:在提供服务的机器上,有程序监听特定端口上的通信流。例如大多数电子邮件通信流出现在端口25上,用于wwww的HTTP通信流出现在80端口上。

       当应用程序希望通过 TCP 与另一个应用程序通信时,它会发送一个通信请求。这个请求必须被送到一个确切的地址。在双方“握手”之后,TCP 将在两个应用程序之间建立一个全双工 (full-duplex) 的通信,占用两个计算机之间整个的通信线路。TCP 用于从应用程序到网络的数据传输控制。TCP 负责在数据传送之前将它们分割为 IP 包,然后在它们到达的时候将它们重组。

       TCP/IP 就是TCP 和 IP 两个协议在一起协同工作,有上下层次的关系。

       TCP 负责应用软件(比如你的浏览器)和网络软件之间的通信。IP 负责计算机之间的通信。TCP 负责将数据分割并装入 IP 包,IP 负责将包发送至接受者,传输过程要经IP路由器负责根据通信量、网络中的错误或者其他参数来进行正确地寻址,然后在它们到达的时候重新组合它们。

8、Multipart/from-data  方法提交表单,后台收不到参数值;

      参考:  https://blog.csdn.net/zllww123/article/details/77587292

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值