1. 什么是http协议?

http,超文本传输协议是现在互联网应用最为广泛的协议,所有的www文件都必须遵循这个标准设计这个最初的目的是为了发布和接收HTML文件。http就是web通信的基础,就是为了能够让文档之间互相关联可以进行互相传阅。http协议在应用层。

  1. http协议的组成

HTTP协议由HTTP请求和相应组成,当在浏览器输入网址进行访问的时候,你的浏览器将你的请求封装成一个HTTP请求发送到服务器,站点服务器接收到请求后会组织相应数据封装成一个HTTP响应返回给浏览器,当然,没有请求的时候也不会有响应。

  1. http请求

http请求是给服务器看的,,分为请求头和请求行,请求体。请求头包含:请求方式(post/get),请求的资源路径,和当前http版本;请求行中又有许多信息,内容以键值对的格式显示(key : value ),请求体中含有静态资源及网页所提交的参数,提交到服务器端。

http 1.0:发送请求,创建一次连接,获得一个web资源,连接断开。

http 1.1:发送请求,创建一次连接,获得多个web资源,保持连接。(持久连接,一次连接可以处理多个请求)“管线化”发送请求:在一次连接中,不需要等待服务器响应请求,就可以连续发送第二次请求。

请求头的几个要点:

Referer: 浏览器告知服务器当前请求来自何处,如果直接访问则不会有这个头,常用于防盗链。

Cookie: 与会话有关的技术用来存储浏览器缓存的cookie信息。http是无状态的,他可是不对通信状态进行保存的,他并不知道之前通信的对方是谁,这样的设计是为了让http简单化,能够快速地处理大量的事物。但是我们经常需要知道访问的是谁,所以cookie就有了,要是服务器想要记住客户端的名字就颁发一个cookie给他,客户端把cookie保存到硬盘上,当下次访问,浏览器会把客户端和所带的cookie信息一起递给服务器,这时,服务器就知道这个家伙是谁了。

Host:服务器主机名,User-Agent:浏览器通知服务器客户端浏览器与操作系统相关信息。

  1. http响应

响应行:协议版本 状态码 状态描述信息 ;例如:HTTP /1.1 200 OK

响应头:也是键值对(key:value)其中有文本类型,最后一次修改时间,日期,server(服务器);

*常见的状态码:200 正常处理 ;204 成功处理但显示页面不更新;206 对服务器进行范围请求,只返回一部分数据 302 :重定向 ;304:拿本地缓存;400:语法错误 401:需要身份认证403:没有权限访问 404:没有找到该资源;500:服务器内部资源错误。503:服务器正忙。

响应体:这个就是我们常见的HTML代码当我们在客户发送请求时会得到服务器的一个响应,相应的内容就有可能是一个页面或servlet数据(页面要显示的正文)。

  1. http和HTTPS的区别?
  1. HTTP的URL以 http:// 开头,而HTTPS的URL以https:// 开头
  2. Http是不安全的,HTTPS是安全的
  3. http标准端口是80,而https的标准端口是443
  4. 在osi网络模式中,http工作与应用层,https的安全传输机制工作与传输层
  5. http无法加密,而https对数据的传输可以加密
  6. http无需证书,但https需要ca机构颁发的SSL证书
  1. URI和URL的区别:

URI统一资源标识符,用来唯一标识一个资源。

URI有三部分组成:1,访问资源的命名机制2,存放资源的主机名,3,资源本身的名称,有路径表示,着重强调资源。

URL统一资源定位符,是一种具体的URI,他不仅可以表示这个资源还可以找到他所在的具体位置。URL是互联网上用来详细描述信息资源的字符串,主要作用于各种www客户端,服务器

URL也由三部分组成。

1.协议(服务方式)

2. 存有资源的主机地址有时还有端口号

3. 主机资源的具体地址,例如在哪个目录下或文件等

HTTP基础知识点小结的更多相关文章

  1. Java 基础知识点小结

    小知识点 所有的程序,都要定义在类里面: 异常 定义方法时,使用 throws 可以用来捕获方法体内没有捕获的异常,然后以 SomeException 抛出异常 java是解释型语言.java虚拟机能 ...

  2. Python基础知识点小结

    1.Python基础知识 在Python中的两种注释方法,分别是#注释和引号('''   ''')注释,#注释类似于C语言中的//注释,引号注释类似于C语言中的/*   */注释.接着在Python中 ...

  3. Javascript基础篇小结

    转载请声明出处 博客原文 随手翻阅以前的学习笔记,顺便整理一下放在这里,方便自己复习,也希望你有也有帮助吧 第一课时 入门基础 知识点: 操作系统就是个应用程序 只要是应用程序都要占用物理内存 浏览器 ...

  4. 【SpringBoot MQ 系列】RabbitMq 核心知识点小结

    [MQ 系列]RabbitMq 核心知识点小结 以下内容,部分取材于官方教程,部分来源网络博主的分享,如有兴趣了解更多详细的知识点,可以在本文最后的文章列表中获取原地址 RabbitMQ 是一个基于 ...

  5. SpringBoot 系列教程之事务隔离级别知识点小结

    SpringBoot 系列教程之事务隔离级别知识点小结 上一篇博文介绍了声明式事务@Transactional的简单使用姿势,最文章的最后给出了这个注解的多个属性,本文将着重放在事务隔离级别的知识点上 ...

  6. disruptor笔记之四:事件消费知识点小结

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  7. fastclick 源码注解及一些基础知识点

    在移动端,网页上的点击穿透问题导致了非常糟糕的用户体验.那么该如何解决这个问题呢? 问题产生的原因 移动端浏览器的点击事件存在300ms的延迟执行,这个延迟是由于移动端需要通过在这个时间段用户是否两次 ...

  8. .NET基础知识点

    .NET基础知识点   l  .Net平台  .Net FrameWork框架   l  .Net FrameWork框架提供了一个稳定的运行环境,:来保障我们.Net平台正常的运转   l  两种交 ...

  9. JavaScript 开发者经常忽略或误用的七个基础知识点(转)

    JavaScript 本身可以算是一门简单的语言,但我们也不断用智慧和灵活的模式来改进它.昨天我们将这些模式应用到了 JavaScript 框架中,今天这些框架又驱动了我们的 Web 应用程序.很多新 ...

随机推荐

  1. 我的js公共函数合集

    export default {     isDefin: function(value) { //数据是否被定义         if (value == null || value == &quo ...

  2. sqlplus、lsnrctl命令工具不可用(libclntsh.so.11.1)

    原因: libclntsh.so.11.1文件丢失了 解决方法: 在其他机器把这个文件拷贝到目标库安装目录底下的lib目录即可

  3. Unity 自动烘培Cpu占用过高电脑卡死

    起因 打开Unity项目   发现右下方一直  

  4. 2020-2021-1 20209307《Linux内核原理与分析》第四周作业

    一.Linux内核源代码简介 1.计算机三大法宝 存储程序计算机 函数调用堆栈 中断机制 2.操作系统两把宝剑 中断上下文的切换 进程上下文的切换 3.函数目录 Linux-3.18.6/arch/x ...

  5. git远程仓库Github

    一.克隆项目 git clone 网址 1.配置信息 git config user.name '用户名' git config user.email '邮箱号' 2.推送项目到远程仓库 # 工作区代 ...

  6. 面试 02-CSS盒模型及BFC

    02-CSS盒模型及BFC #题目:谈一谈你对CSS盒模型的认识 专业的面试,一定会问 CSS 盒模型.对于这个题目,我们要回答一下几个方面: (1)基本概念:content.padding.marg ...

  7. 《Spring Boot 实战纪实》之关键点文档

    目录 前言 (思维篇)人人都是产品经理 1.需求文档 1.1 需求管理 1.2 如何攥写需求文档 1.3 需求关键点文档 2 原型设计 2.1 缺失的逻辑 2.2 让想法跃然纸上 3 开发设计文档 3 ...

  8. C 语言运算符与分支循环小记

    1. 前导内容 · 使用sizeof()统计各种数据类型占用字节数 · 进制转换问题 · if语句基本语法 · switch语句基本语法 2. 运算符 · 基本概念 · 左值 右值 · 优先级结合性 ...

  9. python一键搭建ftp服务

    from pyftpdlib.authorizers import DummyAuthorizer from pyftpdlib.handlers import FTPHandler from pyf ...

  10. C# Wpf 文件保存对话框

    C# Wpf库中无文件保存对话框,需引用winform,引用winform后多处提示引用不明确,将winform引用改别名. // 引用winform,改别名 using Forms = System ...