简介HTTP

(对于http协议的描述我前部分有写,但基于保证文档独立完整性的原则,我再写一遍。反正又不花钱。)

这货的学名叫:超文本传输协议

英文名字:(HTTP,HyperText Transfer Protocol)

他是互联网上应用最为广泛的一种网络协议。http协议定义了浏览器如何向网络服务器请求文档,以及服务器怎样把文档传送给浏览器。 可以这样说嘛?网站就是活在http协议上的。所以对于ASP.NET开发人员来说,这部分内容,是必须了解的。

HTTP协议的特点

这部分内容是我认为的,万一不对请马上指出来。

1.请求/响应式

http协议是请求/响应式的。没有请求就木有响应。

也就是说客户看到的页面,都是根据客户的请求返回的。

2.面向文本

http是面向文本的,他的请求报文是文本,响应报文也是文本。

报文中的每一个字段都是一些ASCII码串,所以各个字段的长度不确定。

3.http报文种类

http报文总共就有两类,请求报文、响应报文。

1)请求报文

2)响应报文

4.http报文结构

无论是请求报文,还是响应报文,都可以划分为三部分。

1)开始行

2)首部行

我的习惯是把上面的的两部分叫,报文头。下面这部分叫报文体。(也不知掉对不对)

3)实际主体

HTTP工作原理图

请求报文

1.请求报文长什么样? 

Chrome核心的请求报文

2.报文结构

3.报文头部每个字段的意义

//从开发者工具上复制的东西

GET /index.php HTTP/1.1

Host: www.baidu.com

Connection: keep-alive

Cache-Control: no-cache

Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8

Pragma: no-cache

User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Maxthon/4.4.3.4000 Chrome/30.0.1599.101 Safari/537.36

Accept-Encoding: gzip,deflate

Accept-Language: zh-CN

Cookie: BDUSS=I4NXZWWTZ

响应报文

1.响应报文长什么样? 

Chrome核心浏览器响应报文。

2.报文结构

3.报文头部每个字段的意义

4.响应码

1)常用响应码表。

2 0 0

2 0 1

2 0 2

2 0 4

O K,请求成功

O K,新的资源建立( p o s t命令)

请求被接受,但处理未完成

O K,但没有内容返回

3 0 1

3 0 2

3 0 4

所请求的资源已被指派为新的固定U R L

所请求的资源临时位于另外的U R L

文档没有修改(条件G E T )

4 0 0

4 0 1

4 0 3

4 0 4

错误的请求

未被授权;该请求要求用户认证

不明原因的禁止

没有找到

5 0 0

5 0 1

5 0 2

5 0 3

内部服务器差错

没有实现

错误的网关;网关或上游服务器来的无效响应

服务暂时失效

2)规律性总结

http响应报文的响应码,看起来很多很杂,不好记。其实只要记住一个规律就好。

响应码   2xx系列   表示成功了。

响应码   3xx系列   表示重定向

响应码   4xx系列   表示浏览器端错误请求

响应码   5xx系列   表示服务器端的错误。

写完感言

看了这篇文章呢,其实也不算文章吧。我就整理标注了一下数据。

东西不少,其实不需要全部记住。脑子有个概念,知道http传输的是文本,他是请求/响应式的。

再记住几个常用的http报文头,响应报文状态码,就万事大吉了。

关于Http协议、ASP.NET 核心知识(2)的更多相关文章

  1. Cookie详解、ASP.NET核心知识(7)

    无状态的http协议 1.回顾http协议 Http协议是请求响应式的,有请求才有响应,是无状态的,不会记得上次和网页“发生了什么”. 关于http协议的这种特点,黑兔在前面的这三篇博文中进行了详细的 ...

  2. 网络基础知识、ASP.NET 核心知识(1)*

    为什么要写网络? 我原本的计划是这样的,连续两天梳理ASP.NET开发的核心知识.说到这呢,有人问了.“不是说好了做ASP.NET笔记吗?为啥要写网络基础知识?是不是傻?” 原因是这样的.作为网站开发 ...

  3. 让页面无刷新的AJAX、ASP.NET核心知识(9)

    AJAX简介 1.如果没有AJAX 普通的ASP.Net每次执行服务端方法的时候都要刷新当前页面,如果没有ajax,在youku看视频的过程中,就没法提交评论,页面会刷新,视频会被打断. 2.说说AJ ...

  4. Session详解、ASP.NET核心知识(8)

    介绍一下Session 1.作用 Cookie是存在客户端,Session是存在服务器端,目的是一样的:保存和当前客户端相关的数据(当前网站的任何一个页面都能取到Session). 在本篇博文的姊妹篇 ...

  5. ASP.NET内核几大对象、ASP.NET核心知识(6)--转载

    这篇博文主要介绍一下几个对象. 1)HttpContext 2)HttpRequest 3)HttpResponse 4)context. Server 5)context.Session HttpC ...

  6. ASP.NET内核几大对象、ASP.NET核心知识(6)

    描述 其实今天的博文,是一般处理程序的后续部分,理论上应该叫一般处理程序().但是觉得文章标题后面的系列名已经有个数字,再加一个2有点怪. 这篇博文主要介绍一下几个对象. )HttpContext ) ...

  7. 地位尴尬的WebForm、ASP.NET核心知识(10)

    WebForm之烦恼 1.winform式的开发方式 WebForm的开发方式中,只需要从工具箱中拖拽一个控件,再从.aspx.cs中写控件的事件逻辑,就好了. 微软为我们做了很多工作,很多东西不需要 ...

  8. 写一个简易web服务器、ASP.NET核心知识(4)

    前言 昨天尝试了,基于对http协议的探究,我们用控制台写了一个简单的浏览器.尽管浏览器很low,但是对于http协议有个更好的理解. 说了上面这一段,诸位猜到我要干嘛了吗?(其实不用猜哈,标题里都有 ...

  9. 写一个简易浏览器、ASP.NET核心知识(3)

    前言 先在文章前面说好了,省得大家发现我根本没有这样的头发,duang的一下一堆人骂我. 这篇文章的标题有点大,其实挺low的,我需要在开头解释一下.我这里只想写一个小的控制台,旨在模拟浏览器的htt ...

随机推荐

  1. [hook.js]通用Javascript函数钩子及其他

    2013.02.16<:article id=post_content> 最近看Dom Xss检测相关的Paper,涉及到Hook Javascript函数,网上翻了一下,貌似没有什么通用 ...

  2. spring复杂数据类型传递

    1.VO对象与PO对象的区别: PO(persistant object) 持久对象:通常对应数据模型(数据库),本身还有部分业务逻辑的处理.可以看成是与数据库中的表相映射的java对象.最简单的PO ...

  3. Hash(散列函数)简单应用引出解决散列冲突的四种方法

    商店允许顾客通过电话订购商品,并在几天后上门自取.商店的数据库使用客户的电话号码作为其检索的关键字(客户知道自己的电话号码,而且这些电话关键字几乎是唯一的).如何组织商店的数据库,以允许更加高效的进行 ...

  4. 微信小程序组件 客服

    <!-- 话务 --> <view class='detail-tel flexca'> <image class='image-full' src='../../img ...

  5. 分布式架构核心RPC原理

    在应用的迭代演进过程中,随着系统访问量提高,业务复杂度提高,代码复杂度提高,应用逐渐从单体式架构向面向服务的分布式架构转变.RPC(Remote Procedure Call Protocol远程过程 ...

  6. 【前端学习笔记02】JavaScript字符串、数组的一些操作方法

    字符串操作: //str.length "micromajor".length // 10 //str.charAt() "micromajor".charAt ...

  7. bzoj5090[lydsy11月赛]组题

    裸的01分数规划,二分答案,没了. #include<cstdio> #include<algorithm> using namespace std; const int ma ...

  8. WPF 如何加载图片

    Uri ri = new Uri(AppDomain.CurrentDomain.BaseDirectory + "Resources/exp.jpg"); ImageSource ...

  9. [SCOI2016]幸运数字 线性基

    题面 题面 题解 题面意思非常明确:求树上一条链的最大异或和. 我们用倍增的思想. 将这条链分成2部分:x ---> lca , lca ---> y 分别求出这2个部分的线性基,然后合并 ...

  10. Zookeeper(二) zookeeper集群搭建 与使用

    一.zookeeper集群搭建 鉴于 zookeeper 本身的特点,服务器集群的节点数推荐设置为奇数台.我这里我规划为三台, 为别为 hadoop01,hadoop02,hadoop03    1. ...