1. 请求方法详解
常用请求方法:
GET、HEAD、PUT、TRACE、DELETE、OPTIONS。
注意:
-
HEAD和GET方法基本一致,只是HEAD不返回内容。当我们只是需要确定一个内容是否正常存在时,就可以使用HEAD。例如,当我们想要确认一张照片是否还存在时,就可以使用HEAD方法,不需要返回照片的内容。 例如:我们用GET方法发出请求时,会返回相应的内容: 而使用HEAD方法则不返回内容: -
TRACE用法:当我们使用了代理,比如代理访问news.163.com ,你想看看代理有没有修改我们的HTTP请求,我们可以用TRACE来测试一下,163.com 的服务器就会把最后收到的请求返回给我们。 -
虽然这些请求方法是HTTP协议里规定的,但WEB SERVER未必允许或支持这些方法。 -
OPTIONS用法:是返回服务器可用的请求方法。
2. 状态码与状态文字详解
-
状态码是用来反应服务器的响应情况的。 常见的如200 OK,404 NOT FOUND -
状态文字是用来描述状态码的,便于人观察。 -
状态码的5个系列: 常用的状态码:
-
200 – 服务器成功返回网页 -
301/2 – 永久/临时重定向 举例: 302默认临时重定向: 我们先将04.php文件重定向到百度网站 当打开04.php文件时,我们可以看到302的状态码信息 301为指定永久重定向: 其中,true参数意指将301信息替换原来的头信息。 注意: 对于GET请求,重定向无所谓,能看到内容就行。但对于POST请求,比如将表单重定向到05.php,再将05.php重定向到06.php,此时会出现数据找不到的情况,那么如何解决这个问题呢? 我们使用307状态码,在重定向之后仍然使用POST请求,此时可以成功返回数据: -
304 Not Modified – 未修改 客户端在向服务器发送请求信息时,会在请求头信息中加入一个时间戳和Etag(唯一资源标识符),当时间戳和Etag没有改变时,客户端就会告诉服务器可以在缓存中取出相应的响应信息。 例如,当客户端请求一张图片时,如果在时间戳(If-Modified-Since)之后图片没有发生改变,并且图片的Etag也没有发生改变,服务器就会在缓存中提取该图片,然后响应给客户端,此时返回的就是304的状态码。 -
307 – 重定向中保持原有的请求数据 -
404 – 请求的网页不存在 -
503 – 服务器暂时不可用 -
500 – 服务器内部错误
参考视频:https://www.bilibili.com/video/BV1js411g7Fw?p=2
|