多语言展示
当前在线:379今日阅读:60今日分享:41

Servlet获得Http请求,GET/POST

Servlet获得Http请求,GET/POSTServlet获得Http请求Http请求信息格式请求行(方法提交方式,URI,Http协议版本)GET方式提交:URI会包含查询字符串POST方式提交:URI不会包含查询字符串
方法/步骤

请求头Host:IP地址:端口号User-Agent:用户网页浏览器类型Accept:请求提交的文件包含类型Keep-Alive:保持连接时间空行(空格)消息体POST提交方式特有,包含查询字符串get与post的区别提交数据类型get:文本信息post:文本信息,二进制文件提交数据长度get:不超过255个字符post:无限制提交数据可见性get:作为URL地址的一部分,显示在浏览器地址栏post:作为请求的消息体,不可见提交数据缓存get:缓存在浏览器URL历史状态中post:不会被浏览器缓存获得请求信息请求头getMethod():获得请求提交方法getRequestURI():获得URI资源(仅端口号后面的部分内容,不包括协议名、主机名、端口号)getRequestURL():获得URL资源getQueryString():获得请求URL后面的查询字符串getContextPath():获得请求URI资源上下文路径getServletPath():获得Servlet的映射路径(如/ccb.do)请求行getHeader('参数'):获取请求行消息类型User-Agent:浏览器版本Host:访问IP地址Keep-Alive:连接时间(生存时间)消息体getParameter(parameterName)获得表单参数的值getParameterValues(parameterName)获得同名表单参数的值文件上传原理:将文件在表单中以二进制流方式装入提交信息传送至Web服务器操作步骤将表单传输方式设置为二进制流enctype='multipart/form-data'HttpServletRequest对象调用getInputStream()获得请求输入流Servlet解析流,通过HttpServletResponse的对象调用getOutputStream(),持久化为对应类型文件请求转发原理:客户端只发一次请求,服务器自动将新连接转接到用户想要的位置,最后断开连接request.getRequestDispatcher('文件路径或URL')获得对话转发response.forward(ServletRequest,ServletResponse)转发完成服务器关闭连接,仅包含转接后内容response.include(ServletRequest,ServletResponse)转发完成保持服务器连接,包含转接前和转接后内容可使用request.setAttribute()和request.getAttribute()获得请求作用域与请求重定向的区别请求重定向使用HttpServletResponse的方法;内部转发使用HttpServletRequest的方法请求重定向客户端向服务器发送了2次请求,由客户端实现; 内部转发客户端只发送1次请求,转发过程由服务器端实现请求重定向URL地址显示的是第二次请求的地址,无法获得请求作用域;内部转发URL地址显示的是服务器URL地址,可获得请求作用域存取对象END

推荐信息