版权声明:. https://blog.csdn.net/WildestDeram/article/details/87560286
HTTP请求的结构
请求是浏览器向Tomcat服务器发送的数据包,在请求中包含3个部分:请求行、请求头、请求体。
请求行中包含了请求方法、请求URL和HTTP协议及版本;请求头包含各种参数,如电脑版本号,服务器地址、数据长度、显示语言、Cookie内容等浏览器服务信息;如果请求方法是Get,就没有请求体。
查询字符串参数
input.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<form action="/rquest-struc/request" method="get">
<input name="username"/>
<input name="password" type="password"/>
<input type="submit"/>
</form>
</body>
</html>
RequestServlet.java
package com.imooc.servlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Servlet implementation class RequestServlet
*/
@WebServlet("/request")
public class RequestServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public RequestServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//处理Get请求
response.getWriter().println("This is get method");
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//请求Post请求
response.getWriter().println("This is post method");
}
}
运行服务器输入对应的地址,在输入账号和密码前先按F12打开开发者平台。选择Network,输入账户名和密码,回车。
在请求头中这句话代表用户使用的操作系统、浏览器版本等信息。
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Safari/537.36
Query String Parameter(查询字符串参数),当看见这三个单词说明该请求方式是Get方式。
再来看看Post的请求方式,把请求方式修改为post
<form action="/rquest-struc/request" method="get">
可以看出请求体为Form Data(表单数据),左侧的request后面也没有数据,这也体现了Post请求的安全性。当看见Form Data说明该请求为Post请求