HTTP协议请求内容:
servlet程序:
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { System.out.println(request.getMethod()); System.out.println(request.getRequestURI()); System.out.println(request.getRequestURL()); System.out.println(request.getProtocol()); //请求头 //请求数据 String host=request.getHeader("Host"); System.out.println(host); Enumeration<String> enums= request.getHeaderNames(); //得到所有请求头名称列表 while(enums.hasMoreElements()){ String headername=enums.nextElement(); String headervalue=request.getHeader(headername); System.out.println(headername+":"+headervalue); } //请求内容 实体内容 只有POST方式 才有实体内容 InputStream in= request.getInputStream(); byte[] buf=new byte[1024]; int len=0; while((len=in.read(buf))!=-1){ String str=new String(buf,0,len); System.out.println(str); }
<body> This is my HTML page. <br> <h3>Post </h3> <form action="/day1/requestdemo1" method="POST"> 用户名:<input type"text" name="name"/><br/> 密码:<input type="password" name="password"/><br/> <input type="submit" value="提交"> </form> </body>
HttpServletRequest对象
HttpServletRequest对象作用是用于获取请求数据。
核心的API:
请求行:
request.getMethod(); 请求方式
request.getRequetURI() / request.getRequetURL() 请求资源
request.getProtocol() 请求http协议版本
请求头:
request.getHeader("名称") 根据请求头获取请求值
request.getHeaderNames() 获取所有的请求头名称
实体内容:
request.getInputStream() 获取实体内容数据