02 课时2 HTTP详解

课程地址,建议1.5倍速观看

https://study.163.com/course/courseLearn.htm?courseId=1209568819#/learn/live?lessonId=1279977088&courseId=1209568819

HTTP报文结构

          类似于一个个人信息填写,给你一个格式表,找着填就好
    请求报文
        从客户端想web服务器发送的请求报文。报文的所有字段都是ASCII码
        请求行
            方法GET URL/index.html 版本HTTP/1.1
        请求头
            host:www.baidu.com
            user-agent
            accept
            accept-language
            ...
        请求实体
例如
            GET https://www.baidu.com/ HTTP/1.1
Host: www.baidu.com
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)     Chrome/65.0.3314.0 Safari/537.36 SE 2.X MetaSr 1.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
Cookie: BIDUPSID=F4FAA1EAC7657A8CE550F788DF0B87C8; PSTM=1585102432;   BAIDUID=F4FAA1EAC7657A8CEAF2CD6F9AAD581B:FG=1; BD_HOME=1; BD_UPN=19314353;  H_PS_PSSID=30962_1453_21081_30825_30823_26350

响应报文
从web服务器到客户端的应答。报文的所有字段都是ASCII码
响应行
版本HTTP/1.1 状态码200 原因短语OK
响应头
date
sever
cookie
...
响应实体
例如是个HTML
例如
HTTP/1.1 200 OK
Bdpagetype: 1
Bdqid: 0xd804d88300002561
Cache-Control: private
Connection: keep-alive
Content-Type: text/html;charset=utf-8
Date: Wed, 25 Mar 2020 02:18:36 GMT
Expires: Wed, 25 Mar 2020 02:17:39 GMT
Server: BWS/1.1
Set-Cookie: BDSVRTM=0; path=/
Set-Cookie: BD_HOME=1; path=/
Set-Cookie: H_PS_PSSID=30962_1453_21081_30825_30823_26350; path=/; domain=.baidu.com
Strict-Transport-Security: max-age=172800
Traceid: 1585102716063046298615565804269251601761
X-Ua-Compatible: IE=Edge,chrome=1
Content-Length: 206326

......
请求报文中的方法
get
post
put
delete
...
响应报文中的状态码
1
通知信息
100 服务器正在处理客户请求
2
成功
200 请求成功 ok
3
重定向
301 永久重定向
302临时重定向
4
客户端错误
403禁止的页面
404页面未找到
5
服务器错误
500服务器内部错误
501
502
503以后再试
首部字段或消息头
user-agent
请求
关于浏览器和她平台的信息,例如Mozilla5.0
accept
请求
客户能处理的页面的类型,如text/html
accept-charset
请求
客户可以接收的字符集,如utf-8
accept-encoding
请求
客户能处理的页面编码方法,如gzip
accept-language
请求
客户能处理的自然语言,如en(英语),zh-cn(简体中文)
host
请求
服务器的DNS名称,从URL中提取出来,必需
authorization
请求
客户的信息凭据列表
cookie
请求
将以前设置的cookie送回服务器,可用来作为会话信息
date
双向
消息被发送时的日期和时间
server
响应
关于服务器的信息,如Nginx/1.1
content-encoding
响应
内容是如何被编码的(如gzip)
content-language
响应
页面所使用的自然语言
content-length
响应
以字节计算的页面长度
content-type
响应
页面的mime类型
last-modified
响应
页面最后被修改的时间和日期,在页面缓存机制中意义重大
location
响应
指示客户将请求发送给别厨,即重定向到另一个url
set-cookie
响应
服务器希望客户保存一个cookie
报文结构实例
HTTP代理
又称web缓存或代理服务器,是一种网络实体,能代表浏览器发出http请求,并将最近的一些请求和响应暂存在本地磁盘中,当请求的web页面先前暂存过,则直接将暂存的页面发给客户端,无需再次访问Internet.
socket编程
socket,套接字,在网络里边,通过IP地址和端口进行通信的一种机制
IP地址,用于在互联网上唯一表示一台机器的一个由数字构成的串
IPv4
IPv6
端口,进行应用程序身份鉴定的一个数字
65535以下都可以
一般1000以下不推荐自用
TCP/UDP编程

你可能感兴趣的:(02 课时2 HTTP详解)