码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 【JavaWeb】Http协议及Servlet快速入门


    🔎这里是【JavaWeb】,关注我学习JavaWeb不迷路
    👍如果对你有帮助,给博主一个免费的点赞以示鼓励
    欢迎各位🔎点赞👍评论收藏⭐️

    👀专栏介绍

    【JavaWeb】 目前主要更新JavaWeb,一起学习一起进步。

    👀本期介绍

    本期主要介绍Http协议及Servlet快速入门

    文章目录

    3、HTTP 协议

    3.1、HTTP 协议的概述:

    3.1.1、什么是 HTTP 协议

    3.1.2、HTTP 协议的作用及特点

    3.1.3、HTTP 协议的版本:(了解)

    3.1.4、HTTP 协议的组成:

    3.2、HTTP 协议入门

    3.2.1、准备工作

    3.2.2、HTTP 请求的详解

    3.2.3、HTTP 响应的详解

    4、Servlet 快速入门

    4.1、概述

    4.2、编写步骤

    3、HTTP 协议

    3.1、HTTP 协议的概述:

    3.1.1、什么是 HTTP 协议

     

    HTTP 协议:超文本传输协议(
    HTTP , HyperText Transfer Protocol) 是互联网上应用最为广泛的一种网
    络协议。
    所有 WWW 开头的网站都遵守该协议
    该协议是为了 使得浏览器和服务器之间 请求 - 响应传递的 超文本信息更加快捷高效。

    3.1.2、HTTP 协议的作用及特点

    HTTP 协议的作用
    HTTP 协议是学习 JavaWEB 开发的基石,不深入了解 HTTP 协议,就不能说掌握了 WEB 开发,
    更无
    法管理和维护一些复杂的 WEB 站点。
    HTTP 协议的特点
    基于 请求 / 响应模型 。 请求和响应必须成对;先有请求后有响应 。
    HTTP 协议默认的端口 :80
    例如: http://www.itheima.com :80

    3.1.3、HTTP 协议的版本:(了解)

    HTTP/1.0
    HTTP/1.1 【目前使用】
    HTTP/2.0 (双工模式)
    HTTPS 协议:基于 HTTP 协议,通过 SSL 或 TLS 提供加密处理数据、验证对方身份以及数据完
    整性保护。
    可以大体认为 HTTPS 比 HTTP 安全性高。 SSL 证书需要付费。

    3.1.4、HTTP 协议的组成:

    HTTP 请求协议、 HTTP 响应协议。
    HTTP 请求协议,是浏览器把信息发送给服务器的方式。
    HTTP 响应协议,是服务器把信息返回给浏览器的方式。
    HTTP 请求包括: 请求行、请求头、请求体
    HTTP 响应包括: 响应行、响应头、响应体

    3.2、HTTP 协议入门

    3.2.1、准备工作

    1、安装火狐的 firebug

    2、发布一个 WEB 项目到 TOMCAT,WEB 项目中准备一个 HTML 页面

    3.2.2、HTTP 请求的详解

    如下图,我们提供两种请求方式抓包结果:
    GET 请求抓包数据:

     

    POST 请求抓包数据:

     请求行,用于存放极为少量的信息

    例如: POST /day09/01.http/form.html HTTP/1.1
    请求行必须在 HTTP 请求格式的第一行。
    请求行格式: 请求方式 资源路径 协议 / 版本
    请求方式:协议规定 7 种,常用两种: GET 和 POST
     GET 请求:
    将请求参数追加在 URL 后面,不安全。例如: form.html?username=jack&username=1234
    URL 长度限制 GET 请求方式的数据大小。
    get 没有请求体
     POST 请求
    请求参数显示请求体处,较安全。
    请求数据大小没有显示。
    目前只有表单设置为 method= ” post ”才是 post 请求 . 其他的都是 get 请求。
    常见 GET 请求:地址栏直接访问、 、 等

     请求头,用于存放预定义好的 key/value 少量信息

    例如: Host: localhost:8080
    请求头从第二行开始 ,到第一个空行结束。及请求头和请求体之间存在一个空行。
    请求头通常以键值对 (key:value) 方式传递数据。
    key 为规范规定的固定值
    value 为 key 对应的取值,通常是一个值,可能是一组。

    请求体,用于传递表单数据,数据量无限

    通常情况下,只有 post 请求方式才会使用到请求体, 请求体中都是用户表单提交的数据 ,每一项数据都使用键值对
    (
    k=v ),多组值使用 & 相连。
    例如; username=jack&password=1234

    3.2.3、HTTP 响应的详解

    如下图,我们提供的响应的抓包结果

    响应行,用于返回响应结果 

    例如: HTTP/1.1 200 OK
    格式: 协议 / 版本 状态码 状态码描述
    状态码:服务器与浏览器用于确定状态的固定数字号码
    200 :请求成功。
    302 :请求重定向。
    304 :请求资源没有改变,访问本地缓存。(查看的不是网上资源,为本地缓存)
    404 :请求资源不存在。通常是用户路径编写错误,也可能是服务器资源已删除。
    500 :服务器内部错误。通常程序抛异常。
    响应头,用于存放预定义好的 key/value 少量信息

    响应体,传递的是请求需要查看的资源数据,数据量无限
    响应体,就是服务器发送给浏览器的资源数据。
    即:若浏览器想看 html 网页,响应体里就是 html 页面代码
    若浏览器想看 jpeg 图片,响应体里就是 JPEG 图片的二进制字节流数据
    若浏览器想看 AVI 视频,响应体里就是 AVI 视频的二进制字节流数据

    4、Servlet 快速入门

    4.1、概述

    今天我们已经学习了 tomcat 和 web 项目使用和编写,明天我们将学习动态资源技术 Servlet ,今
    天我们将编写 servlet 的入门案例,所有步骤为固定内容,今天只需完全模仿。
    Servlet 是服务器的 Java 程序,相当于大脑中负责控制身体的部分。

    4.2、编写步骤

    1. 创建 web 项目,部署 tomcat 环境
    2 、导入支持包

    3、创建 Servlet 程序

     

    4 、启动 tomcat ,浏览器访问
    在浏览器地址栏输入: http://localhost:8080 /webtest/ d1?method=test
    浏览器显示空白页面

     

    控制打印信息 

  • 相关阅读:
    SpringCloud - Spring Cloud Alibaba 之 SkyWalking 分布式链路跟踪;跨多服务追踪,集成日志(十五)
    excel如何加密(excel加密的三种方法)
    性能测试-基础01
    spring的三级缓存
    Java_题目_两个字符串求乘积
    keras训练的H5模型转tflite
    ERROR Error: [copy-webpack-plugin] patterns must be an array
    力扣 轮转数组三段逆置法和三段拷贝法(C语言)
    【Redis学习笔记】第五章 Linux环境安装Redis
    【Git学习笔记】git的基本使用 | gitee | gitignore文件写法
  • 原文地址:https://blog.csdn.net/weixin_45481821/article/details/126354460
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号