zoukankan      html  css  js  c++  java
  • http协议---简述

    http(Hypertext transfer protocol)超文本传输协议,通过浏览器和服务器进行数据交互,进行超文本(文本、图片、视频等)传输的规定。

    也就是说,http协议规定了超文本传输所要遵守的规则。那么网页在输入URL到加载,http究竟做了哪些工作呢?

    浏览器负责发起请求和最后的响应请求,服务器接收请求后,处理请求。我们一步一步来看这个过程,http是如何设定步骤,设置规范的。

    1、输入URL。不管是链接还是地址栏的输入,情况都是一样的。http协议已经规定了URL的格式,通过http协议中的域名或IP找到服务器。

    2、找到服务器的同时,会有http的请求发送过来,告诉服务器我求你做什么?http协议规定了发送请求的格式,这个格式有三部分组成请求行、请求头、请求体

      请求行包括请求的方式(get、post或其他)、要求响应的文件、http版本。

      请求头包括本机信息、浏览器信息等等,当然,也包括URL中?后面的参数。

     

      请求体包括POST传递数据的相关信息,Get方式传值时,请求体为空。

    3、请求信息发送至服务器以后,服务器会获取传递过来的相关信息进行后端程序的处理。

          一般通过request.querystring获取URL传递过来的指,通过request.form获取POST传递过来的值,当然,也是可以获取到所有的其他请求过来的信息,如浏览器信息、cookie信息、操作系统信息等。获取相关的数据以后,服务器就会根据程序进行处理。

    4、处理完成以后,服务器会做出响应,向浏览器输出相关信息。http对响应的格式也做出了规定,响应的信息主要包括,响应码、响应头、响应体

      响应码用来标识服务器响应的结果,如我们常看到的200、404等。大致的分类如下:1开头的表示消息,2开头表示成功,3开头表示重定向,4开头表示失败,5开头表示服务器异常。

      响应头记录服务器相关信息如服务器是否启用压缩、服务器为IIS或Ngnix、程序所用服务端语言等等。当然,缓存也是在这里设置的,通过修改响应头可以修改html在本地缓存的情况,如设置浏览器缓存过期的时间。

      响应体主要是我看到的html的相关内容了。

    完成以上四部操作以后,浏览器就断开了与服务器的数据连接,不能在进行数据传输,如果需要再次进行数据传输,那么一切就要从输入URL开始。

    如此,便是一个完整的网页流程,http从中的作用就是对整个流程进行规定,包括执行步骤,每一步的数据格式

    只有了解http协议以及网页是如何产生的以后,才能对网页进行更好的控制,例如控制浏览器缓存、通过非浏览器发送http请求、get和post传值的选择,甚至是建立长连接,这些都是以http协议为基础。

    转自:http://www.cnblogs.com/xy404/p/3689219.html

  • 相关阅读:
    关于HDFS默认block块大小
    从计算框架MapReduce看Hadoop1.0和2.0的区别
    Linux的作业管理
    php 随机密码和盐 来自wordpress
    SSH管理(重启 停止 运行 安装)centos7
    卸载iptables 小心了!!怎么关闭和卸载iptables
    mysqld: Out of memory 解决办法(mysql)
    ie6 ie7 ie8 ie9兼容问题终极解决方案
    call_user_func()的参数不能为引用传递 自定义替代方法
    centos 域名硬解析(linux)
  • 原文地址:https://www.cnblogs.com/Allen-rg/p/7190087.html
Copyright © 2011-2022 走看看