2019-06-06

常用的请求方式

1.  地址栏输入

在浏览器地址栏直接输入要访问的地址即可,此种方式可以看做是访问服务

器的起始操作。

http://ip:port/path

2.  超链接

使用超链接也可以向服务器发出请求

<a href=”http://www.shsxt.com”>尚学堂</a>

3. Form  表单

当需要向服务器发送请求,并且传输一些用户输入的数据时,我们优先选择form 表单的方式发起请求。

<form  action=”servletResp”  method=”get”>

4. ajax

通过 ajax 发起的请求,属于异步请求,能实现局部刷新的效果,是一种比

较常用的请求方式。

通过 jQuery 中的 ajax(),get(),post(),getJSON()等方法都能发送请求

5.  请求转发

通过服务器内部将请求进行一次转发,可以请求到其他资源(后面讲)

6.  重定向

服务器通过给定一个新资源的地址,响应会客户端后,客户端自动再次发送

一个请求到新资源的地址处。(后面讲)

HttpServletRequest对象

是ServletRequest接口的实例化对象,表示该对象主要应用在HTTP协议上,由Tomcat封装好传递过来。

1) 常用方法

getRequestURL

2) 获取请求头

GetHeader(String)

3) 获取客户端请求的参数

getParameter(name)

5. request  作为 域对象

通过该对象可以在一个请求中传递数据,作用范围:在一次请求中有效,即

服务器跳转有效。

request.setAttribute():设置域对象内容;request.getAttribute(String name):

获取域对象内容;request.removeAttribute(String name): 删除域对象内容。

request 域对象中的数据在一次请求中有效,则经过请求转发,request 域

中的数据依然 存在,则在请求转发的过程中可以通过 request 来传输/共享数据。

HttpServletResponse

Web 服务器收到客户端的 http 请求,会针对每一次请求,分别创建一个用

于 代表请求的 request 对象和 代表响应的 response 对象。

request 和 response 对象代表请求和响应:获取客户端数据,需要通过

request 对象; 向客户端输出数据,需要通过 response  对象。

HttpServletResponse 的主要功能用于服务器对客户端的请求进行响应,将

Web 服务器处理后的结果返回给客户端。service()方法中形参接收的是

HttpServletResponse 接口的实例化对象,这个对象中封装了向客户端发送数据、

发送响应头,发送响应状态码的方法。

常用方法

setError(int sc)

getWriter()

getOutputStream()

  刷新和页面自动跳转

所有头信息都是随着请求和回应自动发送到服务器端(客户端),在

response 中一个比 较常用的头信息就是刷新的指令,可以完成定时刷新的功能。

resp.setHeader("refresh","2");

对于刷新的头信息,除了定时的功能外,还具备了定时跳转的功能,可以让

一个页面定时跳转到一个指定的页面。(已经注册成功,两秒后跳转到登陆页面)

response.setHeader("refresh","3;URL=ok.html");

但是这种跳转不是万能的,有时候根本就无法进行跳转操作,返回后刷新不

会跳转;对于这种定时跳转的头信息,也可以采用 HTML 的方式进行设置,HTML

本身也可以设 置头信息。(客户端跳转)

<meta  htttp-equiv=”refresh”  content=”3;http://www.baidu.com”>

数据响应

接收到客户端请求后,可以通过 HttpServletResponse 对象直接进行响应,

响应时需要获取输出流,有两种形式 getWriter() 获取字符流( 只能响应回字符);

getOutputStream() 获取字节流( 能响应一切数据)。响应回的数据到客户端被浏览

器解析。注意:两者不能同时使用。

PrintWriter  out=resp.getWriter();

out.writer(“<h1>hello  world</h1>”);

ServletOutputStream  out =  resp.getOutputStream();

out.write(“<h1>hello world</h1>”.getBytes());

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 11,172评论 6 13
  • API定义规范 本规范设计基于如下使用场景: 请求频率不是非常高:如果产品的使用周期内请求频率非常高,建议使用双通...
    有涯逐无涯阅读 2,597评论 0 6
  • 1.Servlet和jsp页面过滤器Filter的作用及配置 【参考答案】 过滤器是一个驻留在服务器端的Web组件...
    码记阅读 470评论 0 0
  • 这段时间中年危机充斥了整个网络,这使我也想起了自己,我也步入中年的殿堂,想到自己遇到这样的危机会怎么样? 我自己看...
    BigQ个人成长阅读 627评论 0 51
  • 早晨醒过来看到朋友发的微信得知她的外婆在凌晨的时候去世了,她正在从广州赶回来的车上,不会安慰人的我碰到这种事情更是...
    LL浪阅读 755评论 8 20