获取前端页面请求方式
* 前端页面发送的请求方式应该是后端服务器需要的请求方式保持一致,若不一致应该提示错误信息。
* 获取到前端的请求方式之后通过if语句进行判断,
if("GET".equals(method)){
}else if("POST".equals(method)){
}
* Http请求协议的全部信息被自动封装到了,java.servlet.http.HttpServletRequest对象中。
* 在java.servlet.http.HttpServletRequest接口有一个方法 String get method()。
* 获取浏览器前端页面的请求方式 HttpServletRequest下的 String get method()方法。
* java.servlet.http.HttpServletRequest继承了ServletRequest
* 因为service方法中的request对象是ServletRequest servletRequest对象,所以是没有 get method()方法的,所以需要将ServletRequest servletRequest强制类型转换成HttpServletRequest对象。
* 代码:
```
import javax.servlet.GenericServlet;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
public class LoginServlet extends GenericServlet {
@Override
public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
// 设置字符格式,定义字符输出流
servletResponse.setContentType("text/html;charset=UTF-8");
PrintWriter out=servletResponse.getWriter();
//将 ServletRequest、ServletResponse强制转换成带有Http的接口类型
HttpServletRequest httpRequest = (HttpServletRequest) servletRequest;
HttpServletResponse httpResponse = (HttpServletResponse) servletResponse;
//获取浏览器发送的请求方式
String webRequestMethod = httpRequest.getMethod();
//判断浏览器请求方式 因为LoginServlet是处理登陆的所以要求必须是Post请求
if (("GET").equals(webRequestMethod)) {
//前端报错
out.print("您发送的请求与后台要求不符");
//后台报错
throw new RuntimeException("请求不一致");
}
// 如果程序执行到这个说明前后台的请求方式是一致的
out.print("正在登陆.....");
}
}