zoukankan      html  css  js  c++  java
  • HTTP基础(一)

    HTTP协议

    介绍   :HTTP协议(HyperText Transfer Protocol,超文本传输协议)是因特网上应用最为广泛的一种网络传输协议,所有的WWW文件都必须遵守这个标准。HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。

    重要性:无论是webservice还是rest都离不开对HTTP协议的认识。

                   简化来说:   webservice = HTTP协议 + XML

                                        rest = HTTP协议 + json

    计算机之所以能全世界互通,协议是功不可没的,如果没有协议(就像国内普通话是官方语言),计算机各说各话(每个地区只用方言),那谁都听不懂谁。

    计算机协议有很多种:tcp/ip、http、ftp等。。。

    HTTP协议工作于客户端-服务端架构上。浏览器作为HTTP客户端通过URL向HTTP服务端即WEB服务器发送所有请求。

    WEB服务器有:Apache服务器,IIS服务器,Nginx服务器等。

    HTTP协议即按一定规则,客户端向服务器请求数据,或发送数据,而服务器按一定规则,回应数据。

     HTTP默认端口号为80,但是也可以改为8080或者其他端口。

    HTTP协议的工作流程

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

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

    建立连接:连接就是网络上的虚拟电路(如tcp/ip三次握手)

     

      总结:

        (1)客户与服务器建立连接;
        (2)客户向服务器提出请求;
        (3)服务器接受请求,并根据请求返回相应的文件作为应答;
        (4)客户与服务器关闭连接。

    HTTP三点注意事项:

      1. HTTP是无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户端的请求,并收到客户端的应答后,即断开连接。采用这种方式可以节省传输时间。

           2. HTTP是媒体独立的:这意味着,只要客户端和服务端知道如何处理数据内容,任何类型的数据都可以通过HTTP发送。客户端以及服务端指定使用合适的MIME-type内容类型。()

           3.  HTTP是无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传输的数据量增大 。另一方面,在服务端不需要先前信息时它的应答就较快。

  • 相关阅读:
    教你写Makefile(很全,含有工作经验的)
    configure.in详解
    使用autoconf与automake自动生成MakeFile文件
    例解 autoconf 和 automake 生成 Makefile 文件
    MYSQL:SQL中Group By的使用
    日志文件系统syslog,syslog-ng
    syslog-ng应用详解
    sublime的lua插件
    MySQL索引类型
    linux下automake用法
  • 原文地址:https://www.cnblogs.com/helloHT/p/13179911.html
Copyright © 2011-2022 走看看