《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资源的 ...
随机推荐
- logstash安装插件修改使用的gem源
gem source -l # 查看当前使用的gem源 gem source --remove https://rubygems.org/ # 移除gem源 gem source -a https:/ ...
- 1- Mac和Linux远程连接服务器异常修复(WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!)
p.p1 { margin: 0; font: 11px Menlo; color: rgba(0, 0, 0, 1) } span.s1 { font-variant-ligatures: no-c ...
- Python-函数-字符串函数
函数 1.字符串函数 #(1)add() 对两个数组的元素进行字符串连接 import numpy as np print(np.char.add(["xiaodu"],[&quo ...
- 数据结构与算法【Java】08---树结构的实际应用
前言 数据 data 结构(structure)是一门 研究组织数据方式的学科,有了编程语言也就有了数据结构.学好数据结构才可以编写出更加漂亮,更加有效率的代码. 要学习好数据结构就要多多考虑如何将生 ...
- Linux shell猜数游戏
题目:猜随机数随机1-100中的一个数字,要求用户猜数字,猜中则退出脚本并告知用户猜测次 数和随机数字,否则要求用户继续猜,并告知当前猜的数字和随机数的关系. #!/bin/bash #猜数游戏 Ra ...
- AgileBoot - 手把手一步一步带你Run起全栈项目(SpringBoot+Vue3)
AgileBoot是笔者在业余时间基于ruoyi改造优化的前后端全栈项目. 关于AgileBoot的详细介绍:https://www.cnblogs.com/valarchie/p/16777336. ...
- 一天五道Java面试题----第十天(简述Redis事务实现--------->负载均衡算法、类型)
这里是参考B站上的大佬做的面试题笔记.大家也可以去看视频讲解!!! 文章目录 1.简述Redis事务实现 2.redis集群方案 3.redis主从复制的核心原理 4.CAP理论,BASE理论 5.负 ...
- SpringBoot内置工具类,告别瞎写工具类了
不知大家有没有注意到,接手的项目中存在多个重复的工具类,发现其中很多功能,Spring 自带的都有.于是整理了本文,希望能够帮助到大家! 一.断言 断言是一个逻辑判断,用于检查不应该发生的情况 Ass ...
- Docker之介绍与安装
Docker 说明 本章,我们主要从Docker简介.Docker中几个核心概念和Docker安装这几个方面对Docker进行介绍! 1. Docker 简介 1.1. 什么是 Docker Dock ...
- 机器学习实战-AdaBoost
1.概念 从若学习算法出发,反复学恶习得到一系列弱分类器(又称基本分类器),然后组合这些弱分类器构成一个强分类器.简单说就是假如有一堆数据data,不管是采用逻辑回归还是SVM算法对当前数据集通过分类 ...