《HTTP权威指南》– 3.HTTP方法和状态码
常见HTTP方法:
| 常用HTTP方法 | 描述 | 是否包含主体 |
|---|---|---|
| GET | 从服务器获取一份文档 | 否 |
| HEAD | 只从服务器获取文档的首部 | 否 |
| POST | 向服务器发送需要处理的数据 | 是 |
| PUT | 将请求的主体部分存储在服务器上 | 是 |
| TRACE | 对可能经过代理服务器传送到服务器上的报文进行追踪 | 否 |
| OPTIONS | 决定可以在服务器上执行哪些方法 | 否 |
| DELETE | 从服务器删除一份文档 | 否 |
方法用来告诉服务器需要做什么事情,状态码则用来告诉客户端发生了什么情况。
HTTP状态码分类:
| 整体范围 | 已定义范围 | 分类 |
|---|---|---|
| 100 ~ 199 | 100 ~ 101 | 信息提示 |
| 200 ~ 299 | 200 ~ 206 | 成功 |
| 300 ~ 399 | 300 ~ 305 | 重定向 |
| 400 ~ 499 | 400 ~ 415 | 客户端错误 |
| 500 ~ 599 | 500 ~ 505 | 服务器服务 |
原因短语:为状态码提供了文本形式的解释。例如:200 OK
版本号:服务器会以HTTP / x.y 的形式出现在请求和响应报文的起始行中。(注意:版本号不会被当作分数来处理,例如HTTP2.22 比 HTTP/2.3 要高)
TRACE方法:客户端发起一个请求时,这个请求可能要穿过防火墙、代理网关或其它一些应用程序。每个中间节点都可能修改原始的HTTP请求。TRACE方法允许客户端查看请求最终变成了什么。TRACE请求中不能带有实体的主体部分,TRACE响应的实体部分包括了响应服务器收到的请求的精确副本。
HTTP状态码:
200~299:成功状态码
- 200 : OK 请求成功
- 201 : Created 同于创建服务器对象的请求
- 202 : Accepted 请求已被接受,但服务器还未对其指向任何动作
- 203 : Non-Authoritative Infomation 实体首部包含的信息不是来自于源端服务器
- 204 : No Content 响应报文中包含若干首部和一个状态行,但没有实体的主题部分
300~309:重定向状态码
- 300 : 客户端请求一个实际指向多个资源的URL时会返回这个状态码
- 301 : 在请求的URL已被移除使用。响应的Location首部中应该包含资源现在所处的URL
- 303 : 告知客户端应该用另一个URL来获取资源
- 304 : 客户端可以通过所包含的请求首部,使其请求变成有条件的
- 305 : 用来说明必须通过一个代理来访问资源
HTTP1.1规范指出,对于HTTP1.1客户端,用307状态码取代302状态码来进行临时重定向。
400~409 客户端错误状态码
- 400 : Bad Request 通知客户端发送了一个错误的请求
- 401 : Unauthorized 与适当的首部一起返回
- 402 : Payment Required 还未使用
- 403 : Forbidden 请求被服务器拒绝
- 404 : Not Found 服务器无法找到请求的URL
- 405 : Method Not Allowed 发起的请求中带有所请求的URL不支持的方法
- 406 : Not Acceptable 客户端可以指定参数来说明他们愿意接受什么类型的实体
500~599:服务器错误状态码
- 500 : Internet Server Error 服务器遇到一个妨碍它为请求提供服务的错误
- 501 : Not Implemented 客户端发起的请求超出服务器的能力范围
- 503 : Service Unavailable 用来说明服务器现在无法为请求提供服务,但将来可以
- 505 : HTTP Version Not Supported 服务器收到的请求使用了它不支持的协议版本
图灵图书 -- HTTP权威指南
豆瓣读书 -- HTTP权威指南
《HTTP权威指南》– 3.HTTP方法和状态码的更多相关文章
- HTTP/1.1标准请求方法和状态码
HTTP/1.1标准自从1999年制定以来至今仍然是一个应用广泛并且通行的标准 相关文档 RFC2616:Hypertext Transfer Protocol -- HTTP/1.1 在RFC658 ...
- HTTP协议----请求方法和状态码
现在广泛使用的是HTTP/1.1版本,发布于1997年. 理解HTTP协议,首先从请求开始,比如: POST /form/entry HTTP/1.1 格式为: 请求方法 URI 协议版本 请求方法: ...
- HTTP协议简介详解 HTTP协议发展 原理 请求方法 响应状态码 请求头 请求首部 java模拟浏览器客户端服务端
协议简介 协议,自然语言里面就是契约,也是双方或者多方经过协商达成的一致意见; 契约也即类似于合同,自然有甲方123...,乙方123...,哪些能做,哪些不能做; 通信协议,也即是双方通过网络通信必 ...
- 02 http协议之方法与状态码
一:HTTP请求信息和响应信息的格式 请求: ()请求行 ()请求头信息 ()请求主体信息(可以没有) () 头信息结束后和主体信息之间要空一行 请求行又分3部分 请求方法 请求路径 所用的协议 请求 ...
- (二)http请求方法和状态码
1.HTTP请求方法 根据 HTTP 标准,HTTP 请求可以使用多种请求方法. HTTP1.0 定义了三种请求方法: GET.POST 和 HEAD方法. HTTP1.1 新增了六种请求方法:OPT ...
- HTTP 基础(特性、请求方法、状态码、字段)
1. HTTP 简介(含义.特性.缺点) 2. HTTP 报文 3. GET 和 POST 4. 状态码 5. HTTP 头字段 1. HTTP 简介 HTTP 的含义 HTTP (HyperText ...
- 一些常见http状态码
# encoding=utf-8 #python 2.7.10 #xiaodeng #http状态码 #HTTP权威指南 10页 #一些常见状态码: 200 OK,文档正确返回 302 重定向,到其他 ...
- HTTP权威指南读书笔记
HTTP权威指南笔记 读书有两种境界,第一种境界是将书读薄,另一种是读厚.本篇文章就是HTTP权威指南的读书笔记,算是读书的第一重境界,将厚书读薄.文章对HTTP的一些关键概念做了比较详细的概述,通读 ...
- HTTP请求响应报文&&相关状态码&&GET_POST请求方法 总结
HTTP请求报文: 一个HTTP请求报文由四个部分组成:请求行.请求头部.空行.请求数据 1.请求行 请求行由请求方法字段.URL字段和HTTP协议版本字段3个字段组成,它们用空格分隔.比如 GE ...
- HTTP权威指南_Note
Chapter 1 HTTP概述 1. Web客户端和Web服务器 web服务器即为HTTP服务器 Web浏览器属于客户端 Web浏览器向服务器请求HTTP对象 2. 资源 Web服务器是Web资源的 ...
随机推荐
- 如何在 Docker 之上使用 Elastic Stack 和 Kafka 可视化公共交通
文章转载自:https://blog.csdn.net/UbuntuTouch/article/details/106498568 需要掌握的知识点: 1.使用docker-compose方式部署一套 ...
- 记一次批量更新整型类型的列 → 探究 UPDATE 的使用细节
开心一刻 今天,她给我打来电话 她:你明天陪我去趟医院吧 我:怎么了 她:我怀孕了,陪我去打胎 我:他的吗 她:嗯 我心一沉,犹豫了片刻:生下来吧,我养! 她:他的孩子,你不配养! 我:我随孩子姓 需 ...
- nsis使用URLDownloadToFile下载文件
在Urlmon.dll中有个函数叫URLDownloadToFile,顾名思义,是一个用来下载文件的东西,我们做在线安装或者其他很多时候,往往需要提前下载一些小的文件来配置当前将要安装的程序,遇到这种 ...
- PHP全栈开发(三):CentOS 7 中 PHP 环境搭建及检测
简单回顾一下我们在(一).(二)中所做的工作. 首先我们在(一)中设置了CentOS 7的网络. 其实这些工作在CentOS 6中都是很容易的,因为有鸟哥的Linux私房菜这样好的指导. 但是这些操作 ...
- TF-GNN踩坑记录(三)
引言 Batch size问题 在Tensorflow-GNN中使用batch size除了需要注意上面的链接问题之外,最近我在调试的发现,使用了merge_batch_to_components() ...
- Linux-->开关机+用户管理指令
关机与重启指令 shutdown关机 语法: shutdown -h 关机时间 now 立刻 1 1分种后 shutdown重启 语法: shutdown -r 重启时间 now 立刻 1 1分钟后 ...
- java.lang.ClassNotFoundException:(新建的servlet无法找到class文件)的报错
该问题有可能是IDEA的部署没有更新的问题 将out中的 删除,然后重新导入即可
- JUC(1)线程和进程、并发和并行、线程的状态、lock锁、生产者和消费者问题
1.线程和进程 进程:一个程序,微信.qq...程序的集合.(一个进程包含多个线程,至少包含一个线程.java默认有两个线程:主线程(main).垃圾回收线程(GC) 线程:runnable.thre ...
- 从0搭建vue3组件库:自动化发布、管理版本号、生成 changelog、tag
今天看到一篇文章中提到了一个好用的工具release-it.刚好可以用在我正在开发的vue3组件库.纸上得来终觉浅,绝知此事要躬行,说干就干,下面就介绍如何将release-it应用到实际项目中,让组 ...
- a标签添加链接下划线样式
<a href="/aaaa.asp" target="_blank" style="text-decoration:underline;&qu ...