首页 > 代码库 > web服务器底层-http请求与相应
web服务器底层-http请求与相应
http请求
请求分为三个部分:请求行、请求头、请求数据
请求行
请求方式(GET/POST等) 请求目录,分层(/books/1.html) HTTP协议版本(HTTP/1.1),请求方式有:POST GET HEAD OPTIONS DELETE TRACE PUT。一般用GET/POST,get方式是通过‘?参数’的形式在url里面显示,显示直白。post方式则没有参数显示,适合比较大的数据传送。
请求头(客户机环境)
一般的请求头有:
Accept:用于告诉服务器客户机支持的数据类型
Accept-Charset:用于告诉服务器,客户机采用的编码
Accept-Encoding:用于告诉服务器,客户机支持的数据压缩格式
Accept-Language:客户机的语言环境(国际化语言,根据国家的不同而不同)
UA-CPU:操作系统平台
Host:告诉服务器想访问的主机名
If-Modified-Since:告诉服务器资源的缓存时间
Referer:告诉服务器,客户机是从哪个资源来访问服务器的(防盗链)
User-Agent:告诉服务器客户机的软件环境
Cookie:通过这个头可以向服务器带一点数据
Connection:说明这个请求之后断开还是保持连接(close/Keep-Alive)
Date:当前日期
http响应
http响应分为三部分:状态行、响应头、实体内容
状态行
HTTP版本号 状态码 原因叙述(CRLF)
eg:HTTP/1.0 200 OK
状态码:
100-199,表示成功接收请求,要求客户端继续提交下一次请求才能完成整个处理过程
200-299,表示成功接收请求并已完成整个处理过程常用200
300-399,表示未完成请求,客户端需进一步细化请求。例如,请求的资源已经移动地址,常用30(服务器让客户端去找别人)、307/304(让客户端去拿缓存)
400-499,客户端请求有错误,常用404(没有该资源)、403(没有权限)
500-599,服务端出现错误,常用500
响应头
响应数据
web服务器底层-http请求与相应