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. 关于C++的异常抛出

    在接触 throw 之前,我们只知道可以通过函数的返回值来获取和定位错误,比如通过 return 来层层返回是一种方法,但如果牵扯到多层函数调用,那么通过 return 来返回错误显得过于拖沓,这时就 ...

  2. 【Jmeter 常用方法】

    https://www.jianshu.com/p/a4922b0dceba    如果if控制器的使用

  3. Linux下weblogic启动慢

    修改Linux上Weblogic使用的jdk $JAVA_HOME/jre/lib/security/java.security (/bea/weblogic/jdk150_12/jre/lib/se ...

  4. Linux下设置定时任务删除归档日志

    1.编辑删除归档日志的脚本----/home/oracle/clearlog.sh #! /bin/bash source ~/profile_orcl#记录归档删除的日志exec >> ...

  5. 云图说 | 云上资源管控有神器!关于IAM,你想知道的都在这里!

    摘要:统一身份认证(Identity and Access Management,简称IAM)是华为云上帮助您安全控制华为云资源访问权限的基础服务.通过本期云图说,您可以初步了解IAM的基本功能. 从 ...

  6. Linux后台命令导入MySQL语句

    1.首先输入命令: mysql -u root -p 然后输入MySQL的密码会进入到MySQL的命令界面. 2.输入命令use+数据库名字: use databaseName 3.最后输入命令sou ...

  7. Go语言(1)——程序结构

    程序结构 基础部分仅仅列举和其他语言不一样的地方(C语言为例). 声明 Go语言有四个主要声明:var.const.type.func,类似于C语言中的变量,常量,结构体和函数. package ma ...

  8. 关于CAS中的ABA问题存在的隐患

    一开始觉得ABA问题确实是个问题,但是具体场景是什么呢,虽然过程改了,但是结果一样,取的值也一样 不明所以,不过呢,这里也有一个小的demo可以说明一下 该例子通过AtomicReference判断对 ...

  9. Azure Service Bus(二)在NET Core 控制台中如何操作 Service Bus Queue

    一,引言 上一篇讲到关于 Azure ServiceBus 的一些概念,讲到 Azure Service Bus(服务总线),其实也叫 "云消息服务",是微软在Azure 上提供的 ...

  10. 精尽Spring MVC源码分析 - ViewResolver 组件

    该系列文档是本人在学习 Spring MVC 的源码过程中总结下来的,可能对读者不太友好,请结合我的源码注释 Spring MVC 源码分析 GitHub 地址 进行阅读 Spring 版本:5.2. ...