计算机网络相关知识(http状态码 && 首部字段)
计算机网络相关知识
计算机网络的知识还是非常重要的, 这里做一个简单的总结。
推荐阅读文章:http://www.cnblogs.com/TankXiao/archive/2012/02/13/2342672.html
参考文章:http://kb.cnblogs.com/page/168720/
第一部分:http状态码详解
一. http状态码是什么,作用?
作用: web服务器告诉客户端,发生了什么事情。
二、http状态码的分类是怎么样的?
状态码一般分为5类:

比如我们常见的 200 ok, 表示请求成功; 又如我们常见的404 not found ,即客户端错误,请求的资源不存在。
tips: 比如我们得到了一个状态码 100 ,不知道具体是什么意思, 但是只要我们确定了它在 1XX范围即可,就是信息提示作用。
三、常见的状态码有哪些? && 我们必须要记住的状态码有哪些?
一般人只需要了解下面几种状态码即可,因为下面的这几种状态码都是最常见的。

即一般情况下的网页都是200 ok,而如果我们请求的资源更改了URL,就会提示301或者是302,404也是最常见的状态码。
下面的几个部分我们主要按照之前的分类来讲解状态码:
四:1XX 信息提示状态码
1XX类型的状态码主要是在 http 1.1 中引入的,至今我还没在实际中见过这些状态码,不知道存在的意义是什么,知道 1XX状态码是信息提示作用就ok啦!

五: 2XX成功的状态码
2XX类型的状态码一般是表示请求成功的,见过最多的就是其中的200 ok 了。

其中,我们还应该注意 200 ok 202 请求已经接收,但是服务器尚未处理 204 没有内容 以及 206 部分请求成功。
六. 3XX重定向状态码
重定向状态码用来告诉浏览器客户端,它们访问的资源已被移动, Web服务器发送一个重定向状态码和一个可选的Location Header, 告诉客户端新的资源地址在哪。
值得注意的是,浏览器这时候会重新发送在Location中的url来请求资源,只是对于用户来说是透明的。
301 和 302 非常类似,只是一个是临时转移,一个是暂时转移。
这一部分中,最重要的还是 302 和 304 了, 304表示使用缓存。

七. 4XX客户端错误
有时候客户端会发送一些服务器无法处理的东西,比如错误格式的Request,或者最常见的是: 我们请求了一个并不存在的url,就会导致4XX客户端错误,当然其中最重要的还是404 not found。
在下面的一些状态码中,我们需要格外注意: 400 Bad Request 错误的请求 。 403 Forbidden 即请求被服务器端禁止。 404 not found 资源没有找到。
八. 5XX服务器端错误
有时候客户端发送了一个正确的Request,但是web服务器可能挂了,或者暂时不能运行,这时就会报告5XX错误,也就是说5XX错误是用来描述服务器端错误的。

第二部分: 首部字段
via
表示某个资源的获取通过了哪些代理服务器, 如某张图片的via: cache27.l2nu29[0,304-0,H], cache42.l2nu29[0,0], kunlun7.cn44[0,200-0,H], kunlun10.cn44[2,0] 可以看到,这张图片的获取通过了4个代理服务器。
http首部字段很多,并且它是可以扩展的,除了我们知道的很多标准的http首部字段,还有一些是web服务器和浏览器应用上,出现的各种非标准的首部字段,接下来,我们就对一些比较常用的首部字段进行说明:
- X-Frame-Options
- X-XSS-Protection
- DNT
- P3P
X-Frame-Options
首部字段X-Frame-Options属于HTTP响应首部,用于控制网站内容在其他的web网站的Frame标签中的显示问题。其主要的目的是为了防止点击劫持(clickjacking)攻击。
首部字段X-Frame-Options的值可以是下面的两个:
- DENY 拒绝
- SAMEORIGIN 仅仅是同源域名下的页面匹配时许可。 比如 http://hackr.p/sample.html 页面为 SAMEORIGIN 时, 那么hackr.p上的所有的页面的frame都是可以加载这个sample.html的,但是example.com等其他域名的页面就不行了。
X-XSS-Protection
这个字段的值可以是0或者1. 它属于http响应首部,它是针对跨站脚本攻击的一种对策,用于控制浏览器XSS防护机制的开关。
该首部指定的字段值如下所示:
- 0 将xss过滤设置为无效状态。
- 1 将xss过滤设置为有效装填。
DNT
首部字段DNT属于http请求首部,其中DNT市值Do Not Track 的简称,意思就是决绝个人信息被收集, 是表示拒绝被精准广告追踪的一种方法。DNT首部字段可以设置如下;
- 0 同意被追踪
- 1 不同意被追踪
计算机网络相关知识(http状态码 && 首部字段)的更多相关文章
- HTTP 基础(特性、请求方法、状态码、字段)
1. HTTP 简介(含义.特性.缺点) 2. HTTP 报文 3. GET 和 POST 4. 状态码 5. HTTP 头字段 1. HTTP 简介 HTTP 的含义 HTTP (HyperText ...
- 【JQuery基础知识/statusCode(状态码)】---初学者必备
今天,给大家分享一下JQuery的基础知识,简单介绍一下JQuery高级_Ajax,和我们常见的一些statusCode(状态码)~~~ 如果存在错误,请大家多多指正留言~小女子在此谢过! 一.JQu ...
- 《Python网络编程》学习笔记--从例子中收获的计算机网络相关知识
从之前笔记的四个程序中(http://www.cnblogs.com/take-fetter/p/8278864.html),我们可以看出分别使用了谷歌地理编码API(对URL表示地理信息查询和如何获 ...
- HTTP协议图--HTTP 报文首部之首部字段(重点分析)
1.首部字段概述 先来回顾一下首部字段在报文的位置,HTTP 报文包含报文首部和报文主体,报文首部包含请求行(或状态行)和首部字段. 在报文众多的字段当中,HTTP 首部字段包含的信息最为丰富.首部字 ...
- HTTP首部字段详解
HTTP首部字段详解 在HTTP/1.1规范中定义了47种首部字段,总共分为四大类: 通用首部字段 -- 请求报文和响应报文两方都会使用的首部 请求首部字段 -- 从客户端向服务器端发送请求报文时使用 ...
- 你不知道的HTTP之首部字段一览
一.HTTP/1.1 首部字段一览 HTTP 首部字段根据实际用途被分为以下 4 种类型: 1.通用首部字段:请求报文和响应报文两方都会使用的首部. 首部字段名 说明 Cache-Control 控制 ...
- http状态码相关知识(复制)
HTTP报文是面向文本的,报文中的每一个字段都是一些ASCII码串,各个字段的长度是不确定的.HTTP有两类报文:请求报文和响应报文. HTTP请求报文 一个HTTP请求报文由请求行(request ...
- HTTP协议简介详解 HTTP协议发展 原理 请求方法 响应状态码 请求头 请求首部 java模拟浏览器客户端服务端
协议简介 协议,自然语言里面就是契约,也是双方或者多方经过协商达成的一致意见; 契约也即类似于合同,自然有甲方123...,乙方123...,哪些能做,哪些不能做; 通信协议,也即是双方通过网络通信必 ...
- 《图解Http》 2-6章: 基础,报文,状态码,首部。
HTTP协议和Cookie 是stateless协议,自身不对请求和响应之间的通信状态进行保存.但随着技术发展,为了实现保存状态的功能,引入了Cookie技术. Cookie在请求和响应报文中写入信息 ...
随机推荐
- Aircrack使用
Aircrack Aircrack-ng 组件功能之一就是采集WEP及WPA-PSK字典并应用无线端口扫描进行破解,具体组件说明如下: aircrack-ng 功能主要是WEP及WPA-PSK密码的恢 ...
- 软工作业WordCount
github项目传送门:https://github.com/zzh010/My-wc 一.WC 项目要求 wc.exe 是一个常见的工具,它能统计文本文件的字符数.单词数和行数.这个项目要求写一个命 ...
- Azure SQL作業
由於要定期去刪除比較久的資料,礙於Azure SQL DB目前無法直接創建作業,目前找到一種方式就是通過local的SQL SERVER來執行AZURE SQL指令. 步驟如下: SQL Server ...
- duilib入门简明教程 -- 自绘标题栏(5)
如果大家有做过标题栏的自绘,肯定会感慨各种不容易,并且现有的一些资料虽然完美的实现了功能,但是代码比较乱,需要自行整理.如果用duilib,就是小case啦. duilib其实并没有区分 ...
- 游戏中遇到的BUG
(1)bug描述:战斗中有英雄死亡,一方掉线之后再次上线,仍然可以看到死亡英雄空血条(英雄受到攻击才会显示血条) 解决方案:原来 当前血量小于英雄血量最大值时,证明英雄受到伤害,血条显示为true I ...
- dubbo服务治理中间件,zookeeper注册中心 安装配置
对传统项目架构进行拆分: 集群概念: 面向服务分布式架构: 服务层提供被注册的对象需要实现序列化接口Serializable: 配置表现层和服务层: 依赖包: 服务层: <!-- 定义dubbo ...
- leecode刷题(6)-- 两个数组的交集II
leecode刷题(6)-- 两个数组的交集II 两个数组的交集II 描述: 给定两个数组,编写一个函数来计算它们的交集. 示例: 输入: nums1 = [1,2,2,1], nums2 = [2, ...
- 【bzoj2500】幸福的道路 树形dp+单调队列
Description 小T与小L终于决定走在一起,他们不想浪费在一起的每一分每一秒,所以他们决定每天早上一同晨练来享受在一起的时光. 他们画出了晨练路线的草图,眼尖的小T发现可以用树来描绘这个草图. ...
- vim文本编辑
6.1 vi/vim 的使用 基本上 vi/vim 共分为三种模式,分别是命令模式(Command mode),插入模式(Insert mode)和底线命令模式(Last line mode). 6. ...
- centos7 yum安装配置redis
1.设置Redis的仓库地址 yum install epel-release 2.安装redis yum install redis 修改配置文件,监听所有的IP地址 vim /etc/redis. ...