HTTP协议学习笔记之(二)工作流程与状态吗
首先上图:

HTTP请求方法有哪些?###
GET POST HEAD PUT TRACE DELETE OPTIONS
前三种比较常用
HEAD: 和GET基本一致,只是返回内容不同,比如我们只是确认一个内容(比如照片)还正常存在,不需要返回照片的内容,这时用HEAD比较合适

TRACE: 使你用了代理上网,比如用代理访问new.163.com,你想看看有没有修改你的HTTP请求。可以用TRACE来测试一下,163.com的服务器就会把最后的请求返回给你,但有一点就是,对方的服务器可能不允许你使用TRACE方法。如下图:
使用命令:telnet news.163.com 80

OPTIONS: 返回服务器可用的请求方法
注意:这些请求方法虽然HTTP协议里规定的,但WEB SERVER未必允许或支持这些方法
HTTP响应###
状态码:是用来反映服务器响应情况的,最常见的如200 OK,404 NOT FOUND
| 状态码 | 定义 | 说明 |
|---|---|---|
| 1XX | 信息 | 接收到请求 |
| 2XX | 成功 | 操作成功地收到,理解和接收 |
| 3XX | 重定向 | 为了完成请求,必须采取进一步的措施 |
| 4XX | 客户端错误 | 请求的语法有错误或不能完全被满足 |
| 5XX | 服务端错误 | 服务器无法完成明显有效的请求 |
200 - 服务器成功返回网页
301/2 - 永久/临时重定向
默认是302重定向
header("Location:http://www.baidu.com")
指定用301重定向,true 意指用301信息替换原来的头信息
header("Location:http://www.baidu.com",true,301) 301
304 - Not Modified - 未修改(客户端向浏览器请求,在第一次请求成功返回
200ok后,会把请求的内容存入客户端缓存中,如果下次请求相同的内容,并且内容没有被修改,则会从缓存中提取数据。)
对于一片新闻,GET请求,重定向无所谓,还能看到原来的内容就行,但如果是POST数据,比如,表单-->demo1.php 重定向-->demo2.php,那问题来了,数据提交到demo1.php,demo1.php重定向到demo2.php后,数据就会丢失,怎么解决?
答:使用307进行重定向
307 - 重定向中保持原有的请求数据

浙公网安备 33010602011771号