保证前端发送请求方式与后端响应方式一致(五)

 1、前端的页面发送的请求方式应当和服务器端需要的请求方式一致

       --服务器需要前端发送POST请求,那前端就应该发送POST请求,若发送GET请求,服务器应当提示错误信息。

       --服务器需要前端发送GET请求,那前端就应该发送GET请求,若发送POST请求,服务器应当提示错误信息。

    2、怎么完成以上的需求?

       --在javaweb程序中想办法获取应该请求是什么类型的请求,POST?还是GET?

       --当我们获取到请求方式之后,在javaweb程序中可以使用java语言中if语句进行判断

          if("POST".equals(method)) {

 

          }else if("GET".equals(method)) {

 

          }

    3、怎么在javaweb程序中获取请求方式?

        --重点: HTTP的请求协议全部信息被自动封装到javax.servlet.http.HttpServletReques对象中

        --在HttpServletRequst接口类型中有一个方法叫做: String getMethod(); 可以获取请求方式。

        --public interface javax.servlet.http.HttpServletRequest extends ServletRequest{

 

        }

    4、关于LoginServlet方法     

  public class LoginServlet extends GenericeServlet {



          @Override

          public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException {

           // 将ServletRequest,ServletResponse强制类型转换成带有Http的接口类型

           HttpServletRequest request = (HttpServletRequest) req;

           HttpServletResponse response = (HttpServletResponse) res;



           response.setContentType("text/html;charset=UTF-8");

           PrintWriter out = response.getWriter();



           // 获取浏览器发送的请求方式

           String method = request.getMethod();

           // LoginServlet是处理登录的,要求前边必须发送POST请求

           if("GET".equals(method)) {

           // 前台报错

           out.print("405-您应当发送POST请求");

           // 后台报错

           throw new RuntimeException("405-您应当发送POST请求");

           }

           // 若程序能够执行到这里证明用户发送的请求是POST请求,程序应当正常执行

           out.print("正在登录.......");



          }



       }

 

猜你喜欢

转载自blog.csdn.net/qq_36826506/article/details/82321159