javaweb_01:http

news2024/9/17 7:47:55

一、什么是http

HTTP 是一个简单的请求-响应协议,它通常运行在TCP之上,它指定了客户端可能发送给服务器什么样的消息,以及得到什么样的响应。请求和响应都是以ASCll码的形式给出;而消息内容则具有一个类似MIME的格式。这个简单模型是早期web成功的有功之臣,因为它使得开发和部署更加直接了当。完整网页文档通常由文本、布局描述、图片、视频、脚本等资源构成。默认端口80。
https(安全的):默认端口443

二、发展

1、http1.0:
HTTP/1.0:客户端可以与web服务器连接后,只能获得一个web资源,断开连接(第二次就请求不到了)
2、http2.0
HTTP/1.0:客户端可以与web服务器连接后,可以获得多个web资源。

三、http请求

1、客户端——发请求(request)——服务器
在这里插入图片描述
在这里插入图片描述

Request URL:      https://www.baidu.com/  //请求地址
Request Method:   GET               //请求方法get/post
Status Code:      200 OK           //状态码200
Remote Address:   183.2.172.42:443    //远程地址
Referrer Policy:   strict-origin-when-cross-origin

2、通用:

Accept:  text/html
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6  //语言
Cache-Control: max-age=0
Connection: keep-alive

3、请求行
请求行中的方式就叫请求方式;GET
请求方式:GET、Post、HIDE、DELETE、PUT、TRACT
get:请求能够携带的参数太少,大小有限制、会在浏览器的URL地址上显示数据内容,不安全,但高效
post:请求能够携带的参数没有限制,大小没有限制、不会在浏览器的URL地址上显示数据内容,安全,但不高效

4、消息头

Accept: //告诉浏览器,它所支持的数据类型
Accept-Encoding: //支持哪种编码格式
Accept-Language: //语言环境
Cache-Control: //缓存控制
Connection: //请求是断开还是保持链接
Host://主机......

四、http响应

1、服务器——响应(response)——客户端

Cache-Contorl:private   //缓存控制
Connection: keep-alive   //连接
Content-Encoding: gzip   //编码
Content-Type: text/html; charset=utf-8  //类型

2、响应体

Accept: //告诉浏览器,它所支持的数据类型
Accept-Encoding: //支持哪种编码格式
Accept-Language: //语言环境
Cache-Control: //缓存控制
Connection: //请求是断开还是保持链接
Host://主机......
Refrush://告诉客户端多久刷新一次
Location://让网页重定位

3、响应状态码
200:请求响应成功
3**:请求重定向(重定向:转到新的页面去)
4xx:找不到资源,资源不存在
5xx:服务器代码错误
502:网关错误

问:
1、谈谈网站是如何进行访问的
2、当浏览器中地址栏输入地址并回车的一瞬间到页面能够展示回来,经历了什么?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1959379.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

面试Redis篇

本篇主要总结一下面试官可能会在Redis上询问的主要问题。 Redis的使用场景 问:你的项目中哪些场景中用到了Redis? 答:根据你的项目回答,一般会在一下几个部分缓存、分布式锁...... 缓存 缓存穿透 查询一个不存在的数据&#xff…

黑马点评--给店铺类型查询添加缓存

controller/ShopTypeController.java /*** 店铺分类查询,用于展示首页头部店铺分类* return*/GetMapping("list")public Result queryTypeList() {return typeService.queryList();} service/IShopTypeService.java Result queryList(); service/impl/S…

4234324

作者主页: 作者主页 本篇博客专栏:C 创作时间 :2024年6月20日 最后: 十分感谢你可以耐着性子把它读完和我可以坚持写到这里,送几句话,对你,也对我: 1.一个冷知识: …

alg-in-go-1:动态连通性问题

前言: 有本算法书叫:Algorithms 4th Edition.pdf,它是用java实现的,但是算法的内核是一样,不在乎于语言,考虑到java当今的…, 咱们尝试用golang学习算法. 问题: 思考🤔&#xff…

弹幕背后:B站UP主创作服务解析

引言 在B站,每一条飘过的弹幕都是一个故事的碎片,它们汇聚成一幅幅生动的社交画卷。这里,不仅仅是一个视频分享平台,弹幕背后更是一个充满活力的创作者生态系统。B站以其独特的弹幕文化,为创作者和观众之间搭建起了一座…

【电控笔记-xuan】各种估测器扰动估计性能比较

各种扰动观测器观测结果 蓝色: 扰动值 隆博戈估测器扰动补偿 论文53disturb扰动补偿 2order eso 观测

《系统架构设计师教程(第2版)》第13章-层次式架构设计理论与实践-01-层次式体系结构概述

文章目录 1. 常用层次是架构2. 层次式架构设计的注意点2.1 污水池反模式2.2 应用变得庞大 本章教材又赘述了一遍架构的定义和层次架构风格的概述,我之前的笔记都写了 架构的定义回看《第7章-系统架构设计基础知识-01-软件架构(Software Architecture&…

AD的问题

连续放置同规则元件:先选择再按Tab编辑放置; 拖动元件:(shift 空格 :旋转元件;原理图中按x水平,按y垂直翻转)按ctrl键可以丝滑流畅放置 测试距离:RM 距离单位转…

初学Mybatis之动态 SQL

动态 SQL 是指根据不同的条件生成不同的 SQL 语句 动态 SQL 详情请看链接 搭建环境: mysql 建立博客表 CREATE TABLE blog(id VARCHAR(50) NOT NULL COMMENT 博客id,title VARCHAR(100) NOT NULL COMMENT 博客标题,author VARCHAR(30) NOT NULL COMMENT 博客作者…

华为od机试真题:悄悄话(Python)

2024华为OD机试(C卷D卷)最新题库【超值优惠】Java/Python/C合集 题目描述 给定一个二叉树,每个节点上站一个人,节点数字表示父节点到该节点传递悄悄话需要花费的时间。 初始时,根节点所在位置的人有一个悄悄话想要传…

windows家庭版安装Hyper-V

uniapp开发鸿蒙需要开启Hyper-V,但家庭版默认没有,去网上搜索整理了一下。 1.检查是否安装过Hyper-V 直接搜索 Hyper-V,如果出现就代表有,如果没出现,就搜索 启用或关闭windows功能 。 如果有Hyper-V这一项&…

eclipse手动安装Ivy插件

1、下载四个文件 (1)从这个网址选择一个自己需要的版本的“ivy-”开头的文件夹进去(是“ivy”开头,不是“ivyde”) https://archive.apache.org/dist/ant/ivyde/updatesite/ 我这里选的是“ivy-2.5.0.final_201910201…

TortoiseSVN迁移到本地git

TortoiseSVN迁移到本地git 文章目录 TortoiseSVN迁移到本地git0 背景1 环境准备2 SVN库迁移到VisualSVN2.1 导出dump2.2 将dump文件灌入VisualSVN2.3 获取SVN仓最新URL 3 迁移到Git库中4 迁移分支到Git库 0 背景 之前在前东家工作都是采用git进行项目管理,高效便捷…

大模型应用中常听说的投毒实验是什么?

大模型应用中常听说的投毒实验是什么? 大模型投毒实验是指在训练或使用大规模人工智能模型(如GPT-4等)时,通过有意加入恶意数据或修改训练过程,使模型产生不正确或有害输出的行为。随着人工智能技术的快速发展&#x…

【深度学习】声码器(Vocoder),Vocos 论文

Vocos: Closing the gap between time-domain and Fourier-based neural vocoders for high-quality audio synthesis https://arxiv.org/abs/2306.00814 https://github.com/gemelo-ai/vocos?tabreadme-ov-file 文章目录 Vocos:弥合时域和基于傅里叶的神经声码器…

必看!50个ChatGPT顶尖学术论文指令,助你高效学术研究

随着人工智能技术的进步,AI已成为学术创作的重要工具。本文将为您展示如何利用AI来润色您的论文。我们精心整理了50个顶级ChatGPT学术论文指令,强烈建议您加以利用! 这些指令不仅实用,还能大幅提升您的写作效率。无论是翻译难懂的…

高效的知识付费SaaS平台构建:探索Spring Cloud结合Spring Boot的最佳实践

知识付费平台:引领在线教育的未来 在数字化教育的浪潮中,知识付费平台以其便捷、高效的学习方式,迅速成为教育领域的新宠。该平台围绕用户需求构建,提供职业技能、生活兴趣、人文社科等多领域的专业知识,并通过视频播…

【时时三省】(C语言基础)for循环

山不在高,有仙则名。水不在深,有龙则灵。 ——csdn时时三省 语法 fou(表达式1;表达式2;表达式3) 循环语句 表达式1 表达式1为初始化部分,用于初始化循环变量的。 表达式2 表达式2为条件判断部分,用于判…

Vue 中使用 InMap 创建动态轨迹地图

本文由ScriptEcho平台提供技术支持 项目地址:传送门 Vue 中使用 InMap 创建动态轨迹地图 应用场景介绍 动态轨迹地图广泛应用于物流追踪、车辆管理、人员定位等场景,可直观展示移动对象的历史轨迹和实时位置。本代码示例展示了如何使用 Vue 框架和 I…

vue3 antdv3 检测Modal的尺寸是否改变,全屏的时候获取Modal的width与height,然后我们就可以动态设置表格高度了。

1、先上个图,我们要实现如下的效果,中间的表格部分要自动随Modal的改变而改变。官方:Ant Design Vue — An enterprise-class UI components based on Ant Design and Vue.js 2、那我们一定要能够检测到Modal的宽高的改变才行,然后…