How can a servlet send a redirect to the client?
Các phương án trả lời
Chọn một phương ánLời giảiChọn phương án để mở
Đáp án đúng: "response.sendRedirect("url"); ". Chuyển hướng là việc của đối tượng phản hồi: phương thức này đặt mã trạng thái chuyển hướng cùng tiêu đề Location rồi gửi về trình duyệt, trình duyệt tự phát một yêu cầu mới tới địa chỉ đó nên thanh địa chỉ đổi và dữ liệu trong phạm vi request cũ bị mất. Lựa chọn "request.sendRedirect("url"); " gọi sai đối tượng, giao diện HttpServletRequest không có phương thức này mà chỉ có getRequestDispatcher(). Lựa chọn "redirect("url");" là lời gọi tự do không thuộc API servlet, lớp HttpServlet không cung cấp tên như vậy. Lựa chọn "forward("url");" vừa sai chỗ gọi vì forward là phương thức của RequestDispatcher, vừa sai bản chất vì forward xử lý tiếp ngay trong cùng một lượt yêu cầu ở phía máy chủ nên địa chỉ không đổi.