zoukankan      html  css  js  c++  java
  • 玩转Web之servlet(四)---B/S是如何使用http协议完成通信过程的

    在上一篇文章中,我简单的说了一下B/S架构的流程图,关于浏览器和服务器之间的通信过程知识含糊的说了一下,在这篇文章中我再总结一下B/S架构里是如何利用http协议去完成通信的。


    (一)通讯过程

         1:浏览器建立于Web服务器的连接---->2:浏览器将请求数据打包(即请求数据包),并发送到服务器--->3:服务器将处理结果打包(响应数据包),发给浏览器-->4:关闭连接

    注意:每次请求都需要重新建立连接

    (二):数据格式

    请求数据包:1:请求行:请求方式+请求资源路径+协议描述。例如:GET/image/http.png HTTP/1.1  即为从image目录下请求http.png这个文件

                            2:消息头:通过一些键值对,浏览器向服务器提供浏览器的类型和版本

                            3:实体内容:如果请求方式为post,会把请求参数添加到实体内容里面,如果是get请求会把请求参数添加到请求资源路径的后面。

    响应数据包:1:状态行:协议描述+状态行+状态码

                             2:响应头:服务器会返回给浏览器一些信息,包括编码格式等

                            3:实体内容:返回的处理结果

    (三)请求方式

    常用的请求方式是get和post,只少目前我只使用这两种方式

    get请求: get请求会把请求内容添加到请求资源路径后面,而因为请求资源路径的长度就是浏览器地址栏最大允许字符数,所以get请求可提交的数据非常少,而且请求内容都                      显示在地址栏里,存在安全问题

                      那什么时候使用get请求呢?当直接在地址栏里输入地址,或者使用超链接都是使用get请求,表单提交的默认提交方式也是get提交

    post请求:post请求会把请求加到实体内容里,所以可以请求大量数据,同时不会显示在地址栏里,所以相对安全。

                       当设置表单的提交方式为post时,会使用post请求;在Ajax提交中,设置提交方式为post,也是使用post提交。












  • 相关阅读:
    CentOS 7源码安装zabbix
    CentOS 7 yum安装Zabbix
    Centos 7配置LAMP
    Oracle 12c RMAN备份文档
    Oracle 12c: RMAN restore/recover pluggable database
    Oracle 12c利用数据泵DataPump进行Oracle数据库备份
    EBS测试环境DataGuard配置
    oracle数据库将一列的值拼接成一行,并且各个值之间用逗号隔开
    ORA-19602: cannot backup or copy active file in NOARCHIVELOG mode
    rman输出日志的几种方法(转)
  • 原文地址:https://www.cnblogs.com/oversea201405/p/3752171.html
Copyright © 2011-2022 走看看