常用标准响应头字段
- Access:服务器支持哪些请求方法(如GET、POST等)。
- Content-Encoding:文档的编码(Encode)方法。
- Content-Length:表示内容长度。
- Content-Type:表示后面的文档属于什么MIME类型。
- Date:当前的GMT时间。
- Expires:应该在什么时候认为文档已经过去,从而不在缓存它。
- Last-Modified:文档的最后改动时间。
- Location:表示客户应当到哪里去提取文档。
- Refresh:表示浏览器应该在多少时间之后刷新文档,以秒计。
- Server:服务器名字。
- Set-Cookie:设置和页面关联的Cookie。
- WWW-Authenticate:标识访问请求实体的身份验证方案。
更多的请参考:RFC2612
响应头格式
HTTP/1.1 200 OK
Date: Sat, 14 Nov 2020 01:28:45 GMT
Server: Apache/2.2.14 (Ubuntu) mod_mono/2.4.3 PHP/5.3.2-1ubuntu4.5 with Suhosin-Patch mod_python/3.3.1 Python/2.6.5 mod_perl/2.0.4 Perl/v5.10.1
X-Powered-By: PHP/5.3.2-1ubuntu4.5
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Length: 26
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: text/html
HTTP协议中的URL
什么是URL
URL是统一资源定位符,是互联网上标准资源的地址。
- URL包含:
- 协议
- 用户名:密码
- 主机-子域名.域名.顶级域名(IP)
- 端口号
- 目录/文件名.文件后缀
- 参数=值
- 标志
格式为:
协议://用户:密码@子域名.域名.顶级域名:端口号/目录/文件名.文件后缀?参数=值#标志
相对URL:
/目录/文件名.文件后缀?参数=值#标志
URL编码格式
- 只有字母和数字[0-9a-zA-Z]、一些特殊符号"$-_.+!* ‘(),’"[不包括双引号]、以及某些保留字,才可以不经过编码直接用于URL。
- 编码格式为16进制,每两个16进制前加百分号(%)。
- 例如:“你好” 的utf-8码为:/xe4/xbd/xa0/xe5/xa5/xbd
- "你好"的URL-utf-8格式编码为:%E4%BD%A0%E5%A5%BD
URL同源策略
URL格式中,协议、主机、端口三部分相同,才算是同源。在浏览器设置里,默认情况下只有同源的内容才能相互操作。