Http请求协议
请求协议
https协议是安全版的http协议,网上银行使用这种协议.这个协议在发送信息时先把信息内容加密,一段时间内使用的加密算法不一定.
我们可以通过浏览器插件来监视请求和响应,获取完整的请求和响应信息。
l IE:需要自己安装HttpWatch;HttpWatch软件本身的默认编码不是UTF-8.不支持中文.
l 招商银行的网银插件跟HttpWatch冲突,要禁用它,才能使用HttpWatch.HttpWatch要拦截信息,招商网银不允许拦截信息.
l Fire Fox:安装Firebug插件;
l Google:内置了这功能,也无需安装。
1 GET请求
下面是通过FireFox的Firebug获取到的请求信息,这就是浏览器发送给服务器的全部请求信息内容。请求的地址是:http://localhost/hello/index.jsp
//请求首行 GET /hello/index.jsp HTTP/1.1 //下面全部是请求头信息,因为GET请求没有正文 Host: localhost User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:5.0) Gecko/20100101 Firefox/5.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: zh-cn,zh;q=0.5 Accept-Encoding: gzip, deflate Accept-Charset: GB2312,utf-8;q=0.7,*;q=0.7 Connection: keep-alive Cookie: JSESSIONID=369766FDF6220F7803433C0B2DE36D98 //空行,因为GET没有正文,所以下面没有东西了
l GET /hello/index.jsp HTTP/1.1:GGET请求,请求服务器路径为/hello/index.jsp,协议为1.1;
l Host:localhost:发出请求的主机名为localhost;
l User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:5.0) Gecko/20100101 Firefox/5.0:与浏览器和OS相关的信息。有些网站会显示用户的系统版本和浏览器版本信息,这都是通过获取User-Agent头信息而来的;
l Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8:告诉服务器,当前客户端可以接收的文档类型,其实这里包含了*/*,就表示什么都可以接收;
l Accept-Language: zh-cn,zh;q=0.5:当前客户端支持的语言,可以在浏览器的工具à选项中找到语言相关信息;
l Accept-Encoding: gzip, deflate:支持的压缩格式。数据在网络上传递时,可能服务器会把数据压缩后再发送;
l Accept-Charset: GB2312,utf-8;q=0.7,*;q=0.7:客户端支持的编码;
l Connection: keep-alive:客户端支持的链接方式,保持一段时间链接,默认为3000ms;
l Cookie: JSESSIONID=369766FDF6220F7803433C0B2DE36D98:因为不是第一次访问这个地址,所以会在请求中把上一次服务器响应中发送过来的Cookie在请求中一并发送去过;这个Cookie的名字为JSESSIONID,然后在讲会话是讲究它!
2.Post请求
下面是通过POST请求获取到的请求信息