黑马程序员技术交流社区

标题: java培训之servlet的HTTP详解 [打印本页]

作者: zzj123    时间: 2017-6-13 11:33
标题: java培训之servlet的HTTP详解
Servlet之HTTP详解:
HTTP协议的组成
        请求部分
                GET / HTTP/1.1    请求行:位于请求的第一行
                Accept: */*           请求消息头:从第2行开始至第一个空行
                Accept-Language: zh-cn
                Accept-Encoding: gzip, deflate
                User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)
                Host: localhost:8080
                Connection: Keep-Alive
               
                username=admin&password=123   请求正文:第一个空行之后的全部都是请求正文
        响应部分
                HTTP/1.1 200 OK    响应行:位于响应的第一行
                Server: Apache-Coyote/1.1   响应消息头:从第2行开始至第一个空行
                Accept-Ranges: bytes
                ETag: W/"7777-1322450448000"
                Last-Modified: Mon, 28 Nov 2011 03:20:48 GMT
                Content-Type: text/html
                Content-Length: 7777
                Date: Sat, 15 Sep 2012 01:47:06 GMT

                .....          响应正文:第一个空行之后的全部都是响应正文
                                浏览器显示的就是正文中的内容

各组成部分详解
        请求部分
                GET / HTTP/1.1    请求方式 请求的资源路径 协议版本号
                               
                                GET:请求方式。常用的有GET、POST
                                     GET方式:默认方式。直接输入的网址。
                                                表单数据出现在了行中。url?username=abc&password=123
                                                特点:不安全;有长度限制(<1k)
                                     POST方式:可以通过表单form method="post"
                                                表单数据会出现在正文中。
                                                特点:安全;没有长度限制

                *Accept:浏览器可接受的MIME类型.MIME类型:文件系统中使用扩展名来区分不同文件类型的。
                                        在web中使用MIME类型来区分文件类型。(Tomcat\conf\web.xml中有所有的MIME类型,比如text/html)
                Accept-Charset: 浏览器通过这个头告诉服务器,它支持哪种字符集
                *Accept-Encoding:浏览器能够进行解码的数据编码方式,比如gzip
                Accept-Language:浏览器所希望的语言种类,当服务器能够提供一种以上的语言版本时要用到。 可以在浏览器中进行设置。
                *Referer:包含一个URL,用户从该URL代表的页面出发访问当前请求的页面
                                应用:防盗链;统计网站投放广告的效果
                *Content-Type: application/x-www-form-urlencoded提交的内容类型
                        form表单的enctype="application/x-www-form-urlencoded"的默认值
                *If-Modified-Since: Wed, 02 Feb 2011 12:04:56 GMT利用这个头与服务器的文件进行比对,如果一致,则从缓存中直接读取文件
                *****Cookie:这是最重要的请求头信息之一 。会话技术有关
               

                Warning: w1
                Warning: w2
               
               
                username=admin&password=123   请求正文:第一个空行之后的全部都是请求正文
        响应部分
                HTTP/1.1 200 OK    协议版本号 响应码 描述
                                        响应码:(实际用到的30个左右。其他都是W3C保留的)。
                                        描述:对响应码的描述
                                   常用响应码:
                                        200:一切正常
                                        302/307:请求的资源变更了
                                        304:资源没有被修改过
                                        404:资源不存在
                                        500:服务器程序有错


                *Location: http://www.it315.org/index.jsp指示新的资源的位置。配合响应码302/307来使用。
                                302/307+Location:请求重定向
                Server:apache tomcat指示服务器的类型
                *Content-Encoding: gzip服务器发送的数据采用的编码类型
                Content-Length: 80 告诉浏览器正文的长度

                *Content-Type: text/html; charset=GB2312服务器发送的内容的MIME类型
                *Refresh: 1;url=http://www.it315.org指示客户端刷新频率。单位是秒
                *Content-Disposition: attachment; filename=aaa.zip指示客户端下载文件

                *****Set-Cookie:SS=Q0=5Lb_nQ; path=/search服务器端发送的Cookie会话技术有关
               
                *控制客户端不要缓存内容的
                Expires: -1
                Cache-Control: no-cache (1.1)
                Pragma: no-cache   (1.0)
               

                .....          响应正文:第一个空行之后的全部都是响应正文
                                浏览器显示的就是正文中的内容

作者: 烽火狼烟    时间: 2017-6-13 22:45
抢个沙发哈
作者: liub    时间: 2017-9-12 07:25
抢个沙发哈




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2