相关文章推荐
飘逸的企鹅  ·  JSPDF ...·  1 年前    · 
瘦瘦的人字拖  ·  matlab cell2mat ...·  2 年前    · 
帅气的创口贴  ·  Unable to delete the ...·  2 年前    · 

一、HTTP协议

GET请求协议格式 (get请求没有请求体)
在这里插入图片描述 POST请求协议格式
在这里插入图片描述

  1. 请求消息:客户端发送给服务器端的数据
    * 数据格式:
    ①. 请求行
    ②. 请求头
    ③. 请求空行
    ④. 请求体

  2. 响应消息:服务器端发送给客户端的数据
    数据格式:
    ①. 响应行
    组成:协议/版本 响应状态码 状态码描述
    响应状态码:服务器告诉客户端浏览器本次请求和响应的一个状态。
    * 状态码都是3位数字
    * 分类:
    1xx:服务器就收客户端消息,但没有接受完成,等待一段时间后,发送1xx多状态码
    2xx:成功。代表:200
    3xx:重定向。代表:302(重定向),304(访问缓存)
    4xx:客户端错误。 * 404(请求路径没有对应的资源) * 405:请求方式没有对应的doXxx方法
    5xx:服务器端错误。代表:500(服务器内部出现异常)

②. 响应头:
格式:头名称: 值
常见的响应头:
Content-Type:服务器告诉客户端本次响应体数据格式以及编码格式
Content-disposition:服务器告诉客户端以什么格式打开响应体数据
响应空行
响应体:传输的数据

二、功能:response对象主要用于对客户端的请求进行回应。
以及处理http的连接信息,例如设置http文件头,设置cookie对象等。
3. 设置响应行
①. 格式:HTTP/1.1 200 ok
② 设置状态码:setStatus(int sc)
4. 设置响应头:setHeader(String name, String value)

  1. 设置响应体:
    * 使用步骤:
    1. 获取输出流
    * 字符输出流:PrintWriter getWriter()
    * 字节输出流:ServletOutputStream getOutputStream()
    2. 使用输出流,将数据输出到客户端浏览器

三、response对象方法:

方法 说明
addCookie 添加一个Cookie对象
addHeader 添加Http文件指定名字头信息
containsHeader 判断指定名字Http文件头信息是否存在
encodeURL 使用sessionid封装URL
flushBuffer 强制把当前缓冲区内容发送到客户端
getBufferSize 返回缓冲区大小
getOutputStream 返回到客户端的输出流对象
sendError 向客户端发送错误信息
sendRedirect 把响应发送到另一个位置进行处理
setContentType 设置响应的MIME类型
setHeade 设置指定名字的Http文件头信息

三、重定向
在这里插入图片描述

//访问responseDemo1这个资源会跳转到responseDemo2资源
//1.设置状态码302
response.setStatus(302);
//2.1方法一:设置响应头location
//response.setHeader("location","/JavaScript_Response_war_exploded/responseDemo2");
//2.2方法二:简单的重定向方法
response.sendRedirect("/JavaScript_Response_war_exploded/responseDemo2");
//response.sendRedirect("https://www.baidu.com");

forward 和 redirect 区别

  • 重定向的特点:redirect response.sendRedirect(“目标绝对路径”);
    1. 地址栏发生变化
    2. 重定向可以访问其他站点(服务器)的资源
    3. 重定向是两次请求。不能使用request对象来共享数据
  • 转发的特点:forward request.getRequestDispatcher(“目标相对路径”).forward(request,response);
    1. 转发地址栏路径不变
    2. 转发只能访问当前服务器下的资源(一种在服务器内部的资源跳转方式)
    3. 转发是一次请求,可以使用request对象来共享数据
所属接口:javax.servlet.http.HttpServletResponse,其父接口是ServletResponse,而且ServletResponse也现在只有唯一一个HttpServletResponse子接口,主要原因是,现在的J2EE的WEB程序主要以HTTP协议为主要通讯协议。 response对象的功能: 1. setHeader( String name , String value )  设置指定的HTTP文件的值,如果该值已经存在,则新值会覆盖原有的旧值.  设置头信息:response.setHeader(“头信息内容”,”头信息参数”);  常用的刷新re [[]]中的属性是内部属性,JS不能直接访问 [[Configurable]]:表示能否通过delete删除属性从而重新定义属性,能否修改属性的特性,或者把属性修改为访问器属性[[Enumerable]] 能否通过for-in属性返回属性。[[Writable]] 表示能否修改属性的值[[Value]] 包含这个属性的的值defineProperty() 接受三个参数:对象 属性的名字和一个描述符 ASP.NET含义: ASP(Active Server Pages,活动服务器网页)是Microsoft公司推出的一项动态网页开发技术。 ASP既不是一种语言,也不是一种开发工具,而是一种技术框架,其主要功能是把脚本、HTML、组件和Web数据库访问功能有机地结合在一起,形成一个能在服务器端运行的应用程序,该应用程序可根据来自浏览器端的请求生成相应的HTML文档并回送给浏览器。 获取静态网页过程: 客户端动态网页: 服务器端动态网页: ASP.NET内置对象: 利用提供的内置对象,可以实 res.writeHead(200, 'OK', { 'Content-Type': 'text/html; charset=utf-8', 'Content-Length': Buffer.byteLe... jsp内置对象  定义:可以不加声明就在JSP页面脚本(Java程序片和Java表达式)中使用的成员变量  JSP共有以下9种基本内置组件(可与ASP的6种内部组件相对应):   1.request对象  客户端的请求信息被封装在request对象中,通过它才能了解到客户的需求,然后做出响应。它是HttpServletRequest类的实例。   序号 方 法 说 明  1 object g Web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象、和代表响应的response对象 request和response对象即代表了请求和响应,那我们要获取客户机提交过来的数据,只需要找request对象就可以了,要想客户机输出数据,只需要找response即可。 response只是一个对象名称,HttpServletResponse类 Student xiaoming=new Student(.. js学习笔记33——对象的简介对象的分类创建对象属性读取属性修改属性值输出属性 前面学的String、Number、Boolean、Null、Undefined是基本的数据类型。 如果一个变量不是这几种属性,则它是Object。 基本的数据类型都是单一值,数据之间没有关系。比如一个人的身高体重年龄,得用3个变量单独写,且没啥关系,这样就不是很智能,且容易乱。 这时候就可以用对象了。 对象是一种复合的数据类型,可以保存多个不同数据类型的属性。 对象的分类 1.内建对象:ES标准中定义的对象,在任何ES的实现中 本篇博客主要说明的是关于服务器响应数据发送到客户端用到的response对象。首先会从http的响应消息说起,然后就是response对象;最后是ServletContext对象。 一、Http的响应消息 响应消息指的是服务器发送数据给客户端。在http的响应消息中,主要分为四个部分。和请求头还是比较对应的上的。 响应行:格式->http/1.1 200 ok -> 协议名称/版本1 状态码 状态码描述 二:转发与重定向 1.转发的实现很简单,使用request的getRequestDispatcher()方法得到RequestDispatcher对象,此对象用于封装一个由路径所标识的服务器资源,然后用这个对象调用forward(),将请求传递给服务器..