0012-每特教育蚂蚁课堂深入理解http协议与12306抢票实现_第1页
0012-每特教育蚂蚁课堂深入理解http协议与12306抢票实现_第2页
0012-每特教育蚂蚁课堂深入理解http协议与12306抢票实现_第3页
0012-每特教育蚂蚁课堂深入理解http协议与12306抢票实现_第4页
0012-每特教育蚂蚁课堂深入理解http协议与12306抢票实现_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Http 一、Http 协议入httphttp 协议: 对浏览器客户端 和 服务器端 之间二Http 一、Http 协议入httphttp 协议: 对浏览器客户端 和 服务器端 之间二、查http 协议的工2)使用谷歌的http协议响应(服务器-浏览器HTTP/1.1200Content-Length: 24Date:Fri,30Jan201501:54:57thisoGET /day09/ o HTTP/1.1 Host: localhost:8080User-Agent:Mozilla/5.0(WindowsNT6.1;WOW64;rv:35.0)Gecko/20100101Firefox

2、/35.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8Accept-Encoding: gzip, deflate 四、Http3.1 GETo#http#请求资资源标记符。四、Http3.1 GETo#http#请求资资源标记符。o(/0/myweb/indx.html# T、HEAD、TRACE、PUT、CONNECT 常用的请求方式: TGEToHost:User-Agent:Mozilla/5.0(WindowsNT6.1;WOW64;rv:35.0)Gecko/20100101Fire

3、fox/35.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8Accept-Encoding: gzip, deflate formaction=提交地址T formaction=提交地址T c)GET。T 3.2 Accept:- : - Host: localhost:8080User-Agent:Mozilla/5.0(WindowsNT6.1;WOW64;rv:35.0)Gecko/20100101Firefox/35.0 Accept: text/html,application/xht

4、ml+xml,application/xml;q=0.9,*/*;q=0.8Accept-Encoding: gzip, deflateConnection:keep-Host: localhost:8080User-Agent:Mozilla/5.0(WindowsNT6.1;WOW64;rv:35.0)Gecko/20100101Firefox/35.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8Accept-Encoding: gzip, deflateConnection:keep-3.

5、3 实体 3.4HttpServletRequest 3.3 实体 3.4HttpServletRequest 实体内容3.5service doXX 方法区HttpSevlet类的源码protectedvoidservice(HttpServletRequestreq,HttpServletResponse throwsServletException,IOExceptionAccept-Language:en-us,zh-If-Modified-Since: Tue, 11 Jul 2000 18:23:51 GMT- 当前请求来自于哪里User-Agent:Mozilla/4.0comp

6、atibleMSIE5.5;WindowsNT- 浏览器保存Connection: close/Keep- 浏览器跟服务器连接状态。close: Date:Tue11Jul200018:23:51- /得到请求方/得到请求方Stringmethod=if (method.equals(METHOD_GET) longlastModified=if(lastModified=-1)/servletdoesntsupportif-modified-since,no/togothroughfurtherexpensivelogic doGet(req, resp);elselongtryifModi

7、fiedSince = catch(IllegalArgumentExceptioniae)/ Invalid date header - proceed as if nifModifiedSince = -1;if(ifModifiedSince(lastModified/1000*1000)/Iftheservletmodtimeislater,call/Rounddowntothenearestsecondfora/AifModifiedSinceof-1willalwaysbeless maybeSetLastModified(resp, lastModified); doGet(re

8、q, resp);elseelseif long lastModified = doHead(req, resp);elseift(req,elseifdoPut(req,elseif案例时间 案例防1 2 :案例时间 案例防1 2 :)代码elseifelseifelse/tthismeansNOservletsupports/methodwasrequested,anywhereonthisStringerrMsgObject errArgs = new Object1; errArgs0 = method;errMsg=MessageFormat.format(errMsg,3.8 传递

9、的请求参数如何GET3.8 传递的请求参数如何GETURIT TpublicclassImgFilterimplementsFilterpublicvoiddestroy()/TODOAuto-generatedmethodpublicvoiddoFilter(ServletRequestservletRequest,ServletResponse servletResponse, FilterChain filterChain)throwsIOException,ServletExceptionHttpServletRequest request = (HttpServletRequest)

10、 servletRequest; HttpServletResponseresponse=(HttpServletResponse)servletResponse; String referer = request.getHeader(referer);ln(referis+ if(referer=null| elsefilterChain.doFilter(request,publicvoidinit(FilterConfigarg0)throwsServletException/TODOAuto-generatedmethod。的 API: 取多个值的参数Http响应#http 协议。的

11、API: 取多个值的参数Http响应#http 协议#状态码: 服务器处理请求的结果(状态200 #常见的响应 HTTP/1.1200Server: Apache-Coyote/1.1Content-Length: 24Date:Fri,30Jan201501:54:57thiso5.3HttpServletResponse对 5.3HttpServletResponse对 5.4 案例- 请求重定向resp.setHeader(Location,Server:apache: - : Content-Type: text/html; charset=GB2312Last-Modified: T

12、ue, 11 Jul 2000 18:23:51 GMTRefresh: 1;url=ition:attaent; filename=aaa.zip -表示告诉浏览器以:SS=Q0=5Lb_nQ; path=/searchExpires:1Cache-Controlno-cachePragma:no-Connection: close/Keep-Alive接 keep-alive:保存连接六、Https6.1.1http6.1.2https六、Https6.1.1http6.1.2https都知道 HTTPS 能够加密信息,以免敏感信息被第级别较高的服务都会采用 HTTPS 协议。客户端在使用

13、HTTPS 方式与Web 服务器通信时有以下几个步骤客户使用https 的Web 服务器,要求与Web 服务器建立SSL 连接Web 服务器收到客户端请求后,会信息Web SSL Web 服务器利用自己的私 1、https 协议需要到ca 申2、http 是超文本传输协议,信息是明文传输,https ssl 3、http https 804434、http 的连接很简单,是无状态的;HTTPS SSL+HTTP 协议构建的可进行加密传输、认证的网络协议,比 http 协议安全。6.1.3https虽然说HTTPS6.1.3https虽然说HTTPS 有很大的优势,但其相对来说,还是存HTTPS

14、 50%10% 20% HTTPS HTTP 高效,会增加数据开销和功耗,甚至已有的安全措施也会因此而受通常需要绑定IP,不能在同一IP 上绑定多,IPv4 资源不可能支撑这个消耗HTTPS 协议的加密范围也比较有限,在到什么作用。最关键的的信用链体系并不安全,特别是在某些国家可以控制CA 的情七、http 请求工7.1 客户端模七、http 请求工7.1 客户端模拟http请求工tmen(谷歌插件)、RestC 7.2 服务器模拟http请求工httpc nt、httpCient* 发t请本地应用并根据传递参数不同返回不同结publict()/ 创建默认的nt实例ntnt=/创建tt=Lis

15、tformparams=newArrayList(); ameValuePair(type, house); UrlEncodedFormEntity uefEntity;tryuefEntity=newUrlEncodedFormEntity(formparams,UTF-8); ln(executing request + httpCloseableHttpResponse response = httpctry HttpEntityentity=response.getEntity(); if (entity != null) ln(Responsecontent:+ EntityUti

16、ls.toString(entity, UTF-8);finallycatchntProtocolException catch(UnsupportedEncodingExceptioncatch(UnsupportedEncodingException catch(IOException finally/ 关闭连接资 catch(IOException *发送get请publicvoidget()nt httpcnt = HttpCtry 创建HttpGet httpget = new HttpGet(htln(executingrequest+httpget.getURI();执行get请

17、求CloseableHttpResponse response = httpctry HttpEntityentity=打印响应状if (entity != null) / 打印响应内容长ln(Responsecontentlength:+ ln(Responsecontent:+ finallyajax跨域实战解决方 。annotajax跨域实战解决方 。annotload type:ype:url : data : userName=余胜军&userAge=19,s:function(msg) catch(ParseException catch(IOException finally/

18、关闭连接资 catch(IOException 使 response 添加header *); 支持使 response 添加header *); 支持有前端代码后端代码publicclassFromUserServletextendsHttpServletprotectedvoiddoGet(HttpServletRequestreq,HttpServletResponseresp)throws ServletException, IOException t(req,protected void dot(HttpServletRequestreq,HttpServletResponseresp)throws ServletException, IOException /s-Control-Allow-Origin,ty

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论