响应相关知识
请求消息 : 客户端发送给服务器端的数据
响应消息 : 服务器发送给客户端的数据
响应行:
1)组成 : 协议/版本 响应状态码描述
2)响应状态码: 服务器告诉客户端浏览器本次请求和响应的状态
*状态码都是三位数字
*分类
-1xx : 服务器接收客户端消息,但没有接收完成,等待一段时间后,发送1xx多状态码
-2xx : 成功 . 代表 : 200
-3xx : 重定向 .代表 : 302(重定向),304(访问缓存)
*重定向 : 资源跳转方式
*简单的重定向代码sendRedirect()
-4xx : 客户端错误
*代表:404(请求路径没有对应的资源)
*代表:405(请求方式没有对应的doXxx方法)
-5xx : 服务器端错误
*代表:500(服务器内部出现异常)
响应头 :
1)格式 : 头名称 : 值
2)常见的响应头
*Content-type : 服务器告诉客户端本次响应体数据格式以及编码格式<text/html;charset=utf-8>
*Content-disposition:服务器告诉客户端以什么格式打开响应体数据
*值 :
*in-line :默认值,在当前页面内打开
*attachment ;filename=xxx: 以附件形式打开响应体.文件下载
3)响应空行:
4)响应体 : 传输的数据
Response
1)功能 : 设置响应消息的
*设置响应行
//格式 : HTTP/1.1 200 ok
//设置状态码 : setStatus(int sc)
*设置响应头
//setHeader(String name , String value)
*设置响应体
//使用步骤 :
-获取输出流
/*字符输出流 : PrintWriter ->getWriter ()
/*字节输出流 : ServletOutputStream ->getOutputStream()
-使用输出流,将数据输出到客户端浏览器
转发的特短 :
1)转发地址栏路径不变
2)转发只能访问当前服务器下的资源
3)一起请求,可以使用request对象来共享数据
重定向的特点
1)重定向地址栏发生改变
2)重定向可以访问其他站点(服务器)的资源
3)重定向两次访问,不能使用request对象来共享数据
4)重定向需要加虚拟目录
forward(转发) 和 redirect(重定向)
路径写法 :
1)路径分类
*相对路径 : 通过相对路径不可以确定唯一资源
*不以/开头,以 . 开头的路径
*规则 :找到当前资源和目标资源之间的相对位置关系
*绝对路径 : 通过绝对路径可以确定唯一资源
*以/开头的路径
*规则: 判断定义的路径是给谁用的?判断请求将来从哪发出
*给客户端浏览器用: 需要加虚拟目录
*给服务器端使用,不需要写虚拟目录
*转发路径 不需要提供虚拟目录
*建议虚拟目录动态获取
SerletContext
1)概念 : 代表整个web应用,可以和容器(服务器)来通信
2)获取 :
通过request获取
*request.getServletContext();
HttpServlet获取
*this.getServletContext();
3)功能 :
*获取MIME类型 :在互联网通信过程中定义的一种文件数据类型
//Mime类型是在tomcat的web/.xml中声明
//方法:contxet.getMiMeType
*域对象: 共享数据(几乎不用)
-setAttribute(String name . Object value)
-getAttribute(String name)
-removeAttribute(String name)
*SrevletContext对方范围 :所有用户请求的数据
*获取文件的真实(服务器)路径
获取文件的服务器路径(下载)
1)方法 : String - >getRealPath(String path)
*访问web目录下文件 / 文件 .后缀
*访问web-inf下文件 / web-inf/文件.后缀
*访问src目录下的文件 /web-inf/classes/文件.后缀
*访问src目录下的文件的另一种方式 :
-class.getClassLoader.
|
|