您的位置:首页 > 理论基础 > 计算机网络

http Reponse

2014-03-31 17:40 78 查看
import java.io.*;

import javax.servlet.*;
import javax.servlet.http.*;

import sun.misc.BASE64Decoder;

public class rep extends HttpServlet {

	public void doHead(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		doPost(request, response);
	}

	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		doPost(request, response);
	}

	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		// PrintWriter out = response.getWriter();
		// out.println("Hello World");
		HttpSession session = request.getSession();
		String user = (String) session.getAttribute("user");
		String pass;
		if (user == null) {
			try {
				response.setCharacterEncoding("GBK");
				PrintWriter ut = response.getWriter();
				String authorization = request.getHeader("authorization");
				System.out.println(authorization);
				if (authorization == null || authorization.equals("")) {
					response.setStatus(401);
					response.setHeader("WWW-authenticate",
							"Basic realm=\"input user passowrd\"");
					PrintWriter out = response.getWriter();
					out.print("对不起你没有权限!!");
					return;
				}
				 String userAndPass=new String(new BASE64Decoder().decodeBuffer(authorization.split("Basic ")[1]));
				 //String userAndPass = new String(new BASE64Decoder().decodeBuffer(authorization));
				 System.out.println(userAndPass);
				if (userAndPass.split(":").length < 2) {
					response.setStatus(401);
					response.setHeader("WWW-authenticate",
							"Basic realm=\"input user passowrd\"");
					PrintWriter out = response.getWriter();
					out.print("对不起你没有权限!!");
					return;
				}
				user = userAndPass.split(":")[0];
				pass = userAndPass.split(":")[1];
				if (user.equals("111") && pass.equals("111")) {
					session.setAttribute("user", user);
					RequestDispatcher dispatcher = request
							.getRequestDispatcher("index.jsp");
					dispatcher.forward(request, response);
				} else {
					response.setStatus(401);
					response.setHeader("WWW-authenticate",
							"Basic realm=\"input user passowrd\"");
					PrintWriter out = response.getWriter();
					out.print("对不起你没有权限!!");
					return;
				}
			} catch (Exception ex) {
				ex.printStackTrace();
			}
		} else {
			RequestDispatcher dispatcher = request
					.getRequestDispatcher("index.jsp");
			dispatcher.forward(request, response);
		}

	}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: