zoukankan      html  css  js  c++  java
  • JavaWeb之HTTP概述

    JavaWeb基础

    JavaWeb基础

    什么是HTTP协议

    • 超文本传输协议
    • 是一种客户端浏览器与服务端数据传输的一种规范
    • 无论是发送还是接收数据都要按照规范进行操作
    • 特点:
      • 它是以TCP/IP协议为基础的一个应用层协议
      • 它是基于请求/响应的处理方式协议
      • 它是一个无状态无连接的协议
    • HTTP协议版本
      • 1.0
        • 一次请求/响应只能处理一件事
        • 客户端浏览器在建立连接后,请求与响应只有一次
      • 1.1
        • 客户端浏览器在建立连接之后,会产生N次请求与N次响应
        • 通过并发的方式产生
    • HTTP协议原理
      • 创建一个基于TCP/IP协议的连接
      • 发送请求
      • 返回响应
      • 关闭连接
    • HTTP协议结构
      • 请求结构
        • BufferReader bufferReader = new BufferReader(new InputStreamReader(socket.getInputStream()))
        • 请求行
          • GET/POST+URL+协议的版本
        • 请求头
          • 客户端给服务器提供的一些额外信息
        • 请求体
          • 客户端给服务器发送的数据内容
          • 不是每次发送请求时都存在请求体,POST存在请求体,GET没有请求体
        • GET请求和POST请求区别
          • GET请求时,参数在 URL路径中
          • POST请求时,参数不在URL中出现,而是产生请求体 -- Content-Length分格上下文标识的长度
      • 响应结构
        • 状态行
          • 常见状态行
            • 200 -- 正常
            • 206 -- 部分内容异常
            • 302/307 -- 临时重定向异常
            • 400 -- 请求无效
            • 401 -- 未经授权
            • 404 -- 找不到地址
            • 500 -- 服务端异常
        • 响应头
        • 响应体
          • 服务端发送给客户端的一些额外信息

    会话

    • 会话称为Session
    • 当客户端浏览器第一次访问服务端时,服务端会创建一个"标识",然后将标识响应客户端浏览器,客户端浏览器在第二次发送请求时,将携带这个标识发送给服务器。这个时候服务端就知道当前客户端的身份了
    • HTTP协议是无状态无连接的,本身不具备识别客户端浏览器身份的,需要借助于提供的会话来实现状态识别的效果
    • 特点:
      • 在客户端浏览器不关闭的情况下,服务器会识别出客户端浏览器的身份
      • 在客户端浏览器关闭的情况下,标识将会被清空,再次打开客户端浏览器时,标识就没有了,再次请求时,服务器识别不到客户单浏览器的身份,服务器就会创建一个新的标识,响应给客户端浏览器
    • 在一个会话中,可以实现多个请求,并且可以通过会话来实现数据共享
    如有问题,请发送邮件至buxiaqingcheng@163.com或者buxiaqingcheng@dingtalk.com
  • 相关阅读:
    开放GIS标准OGC之路(4)之 解密Filter(摘抄)
    在WCF中使用async/await 关键字的简化的异步编程模型(译)
    WinCE仿真器设置
    oracle PL/SQL编程详解
    oracle 日期格式
    钢笔工具使用教程
    使用Signature Tool自动生成P/Invoke调用Windows API的C#函数声明
    利用bitmap将图片部分颜色透明
    PS圆角图片并保留透明背景
    Script Debugger的使用
  • 原文地址:https://www.cnblogs.com/zhenzhunaichabujiatang/p/13730683.html
Copyright © 2011-2022 走看看