Request

个我总结:只要记住  只要是有关于客户端请求的信息,都可以藉由它来取得,例如请求标头、请求方法、请求参数、使用者IP等等信息。

3.什么情况下为响应?什么情况下为请求?
简单一句话,请求就是好像你向某个为借东西,响应就是他把这个东西借给你!!!

 

[ JSP] JSP中的隐藏对象 -- request- -

  request告,就可以在JSP网页中使用,在转译为Servlet之后,它会转换为javax.servlet.http.HttpServletRequest型态的对象,HttpServletRequest对象是有关于客户端所发出的请求之对象,只要是有关于客户端请求的信息,都可以藉由它来取得,例如请求标头、请求方法、请求参数、使用者IP等等信息。
request的主要方法:
getParameterNames():取得客户端所发出的请求参数名称.
getParameter():可以让您指定请求参数名称,以取得对应的设定值.
getServerName():请求的服务器.
getProtocol():使用协议.
getMethod():请求方法.
getServerPort():请求端口号.
getContextPath():Context路径. context理解为上下文比较好(也就是一个项目)
getServletPath(): Servlet路径.
getRequestURI():URI路径.
getQueryString():查询字符串.
getRemoteAddr():使用者主机IP.
getRemotePort():使用者使用端口号.
例子:
http://localhost:8080/myjsp/requestdemo.jsp?name=john&nick=johncn
对应的信息为:
请求的服务器: localhost
使用协议: HTTP/1.1
请求方法: GET
请求的端口号: 8080
Context路径: /myjsp
Servlet路径: /requestdemo.jsp
URI路径: /myjsp/requestdemo.jsp
查询字符串: name=john&nick=johncn
使用者主机IP: 127.0.0.1
使用者使用端口号: 1060

response

[JSP] JSP中的隐藏对象 -- response- -
  JSP的response隐藏对象在转换为Servlet之后,对应于HttpServletResponse型态对象,HttpServletResponse对象是 有关于对客户端请求之响应,您可以利用它来设定一些要响应的讯息,例如标题信息、响应状态码等.
  response的常用方法:
  setHeader():是一个通用的标头设定方法,您可以用它来设定任何「名称/值」的标头.
  setIntHeader():是专门用来设定整数值标头的版本.
  setDateHeader():是setHeader()的Date设定版本,第二个参数是设定Date的Long数值,0表示GMT 1970/1/1 00:00。
  (Note:以上3个函数用来设置HTTP协议的表头,必须对HTTP协议有些了解才能正确使用,我现在也不清楚).
  setStatus():是用来设定回应的状态码,例如404 Not Found,HttpServletResponse类中提供了一些助忆常数设定,例如SC_NOT_FOUND就是表示404状态码(可以在Servlet API文件中查询相关的助忆常数).
  sendError():会根据服务器的预设错误网页回报方式显示错误讯息.
  sendRedirect():设置重定向页面.
  getWriter():取得PrintWriter对象,由它来写出响应至服务器的本体信息.

1.输出文本和HTML代码
利用的是response提供的Write()方法
Response.Write("peterbbs");
Response.Write("< br />");输出换行符号
string table ="<table border=1>........";
Response.Write(table);//Output html

2.输出图像
Response输出图像是通过输出该图像的二进制数据实现的实现方法BinaryWrite();
具体方法:
(1) 将图像的虚拟地址转换为物理地址
(2) 定义文件流 读取二进制数据 并保存
(3) 调用方法BinaryWrite();
(4) 设置当前的Web窗体页的输出格式为“image/pjpeg”,此格式只能输出文件后缀名".jpg"的图像
(5) 调用Response对象的End()方法,中止页面的其他输出。

string path = Request.MapPath("~/image.gif");
        FileStream fs = new FileStream(path,FileMode.Open,FileAccess.Read);
        byte[] imageData = new byte[(int)fs.Length];
        fs.Read(imageData, 0, (int)fs.Length);
        Response.BinaryWrite(imageData);
        Response.End();//使用这个东西的时候,你会发现你再response的任何write方法都失效了

3.页面间的跳转
这里我就不写了,在我的BAIDU空间里有关于新窗口的response.redirect的方法

4.页面间的参数传递
直接就response.redirect("######.aspx ? id =10"); 就可以了,需要记住这个格式,很固定的。
获取传递过来参数就直接调用Request.Param 就可以获取这个值了


其它问题:
1.JSP中,request是不是HttpServletRequest的一个实例?  
                      response是不是HttpServletResponse的一个实例?  
        若是,我就不理解了,HttpServletRequest不是接口吗?接口怎么会有实例呢?  
        若不是,request/response它是哪个类的实例呢?
request是HttpServletRequest的一个子类的实例,这么说很含糊,事实上这个具体类根据不同的服务器是不同的,但是这些具体类都implement了HttpServletRequest接口。因为无法确定具体是哪个类,所以request只能说与javax.servlet.http.HttpServletRequest对应。你可以在不同的服务器下使用相同的Jsp页面,在其中嵌入<%=request.getClass()%>看看
request对象与javax.servlet.http.HttpServletRequest类对应,  
  response对象与javax.servlet.http.HttpServletResponse类 对应
2.当Request对象获取客户提交的汉字字符时,会出现乱码问题,必须进行特殊处理。解决方法是在需要接收request对象内容的页面加一句
request.setCharacterEncoding("GB18030");
这里的GB18030是根据你自己的页面编码来决定的。
3.什么情况下为响应?什么情况下为请求?
简单一句话,请求就是好像你向某个为借东西,响应就是他把这个东西借给你!!!

Request和response的用法总结相关推荐

  1. request与response的用法

    必备知识 在学习这两个对象之前,我们应该已经有了http协议的基本了解了,如果不清楚http协议的可以看我的关于http协议的介绍.因为其实request和response的使用大部分都是对http协 ...

  2. request 和response

    当今web程序的开发技术真是百家争鸣,ASP.NET, PHP, JSP,Perl, AJAX 等等. 无论Web技术在未来如何发展,理解Web程序之间通信的基本协议相当重要, 因为它让我们理解了We ...

  3. Scrapy - Request 和 Response(请求和响应)

    Requests and Responses:http://doc.scrapy.org/en/latest/topics/request-response.html Requests and Res ...

  4. java创建response对象_javaweb入门-----request与response的作用

    request对象和request对象的原理 1.request和response对象request对象和request对象的原理时由服务器创建的,我们来使用它们 2.request对象是来获取请求消 ...

  5. Request和Response的概述及其方法

    Request和Response的概述 Request是请求对象,Response是响应对象 ServletRequest和HttpServletRequest是继承关系,并且两个都是接口,接口是无法 ...

  6. Request对象的一般用法

    Request是HttpRequest的派生类,主要的工作是从客户端获取信息,包括浏览器的种类,用户输入表单中的数据,Cookies中的数据和客户端认证等.在说Request对象的具体用法之前,先来说 ...

  7. Python爬虫5.3 — scrapy框架spider[Request和Response]模块的使用

    Python爬虫5.3 - scrapy框架spider[Request和Response]模块的使用 综述 Request对象 scrapy.Request()函数讲解: Response对象 发送 ...

  8. response java_java中response对象用法实例分析

    本文实例讲述了java中response对象用法.分享给大家供大家参考,具体如下: 动作元素用于运行时在服务器端结束当前页面的执行,并从当前页面转向指定页面. 使用response对象的setHead ...

  9. request的基本使用用法

    urllib.request基本使用用法 (1)基本用法 url = "http://www.baidu.com/"# 获取response对象response = urllib. ...

最新文章

  1. php和python和java-Java、Python与PHP的虚拟机异同
  2. udhcp源码详解(四) 之租赁IP的管理
  3. 2019做的第一个艰难决定
  4. mysql io_MySQL服务器 IO 100%的分析与优化方案
  5. 分布式系统中的一致性协议
  6. etcd php,etcd集群备份和数据恢复
  7. LeetCode 题 - 69. x 的平方根 python解法
  8. (50)Xilinx Multiplier IP核配置(十一)(第10天)
  9. css背景图充满整个屏幕
  10. SpriteBuilderamp;Cocos2D使用CCEffect特效实现天黑天亮过度效果
  11. 《深入浅出MFC》读书笔记
  12. ad软件画pcb方法总结_PCB各层介绍及AD软件画PCB时的规则
  13. limesurvey php5.2,功能强大的PHP开源问卷调查系统 LimeSurvey 有中文语言包-win7中文语言包...
  14. 第13期-在线的文章摘要生成器, 自己写了一个支持中文的
  15. html抓取cpu温度,一种获取CPU温度的测试方法、系统及计算机存储介质与流程
  16. GOM传奇文件目录功能说明
  17. 论算法人的语言表达能力
  18. Python3字符串前缀u、b、r
  19. python画水平线和垂直线横线 纵线
  20. windows7怎么能不锁定计算机,怎么设置电脑不锁屏

热门文章

  1. 【前端】【JavaScript】通过成绩判断等级
  2. 从“中央厨房”看媒体深度融合
  3. 【Unity3D实战项目:疯狂杀戮】角色模型的行走控制(一)
  4. 一键发送聊天话术软件,哪些工具可以一键发送话术
  5. ⚡三十分钟⚡小白写了一个坦克大战无敌版(找素材又花了半个小时/尴尬)
  6. python可视化图表分析---pyecharts库的使用
  7. 2021icpc亚洲赛区沈阳站总结
  8. 一些个人常用的网站网址
  9. Oracle-Spatial空间数据库基础
  10. snmpwalk的报文检测