Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- static class BasicAuthHandler implements HttpHandler {
- public void handle(HttpExchange exchange) throws IOException {
- Headers header = exchange.getRequestHeaders();
- String auth = header.getFirst("Authorization");
- String userpass = null;
- if(auth != null){
- auth = auth.split(" ")[1];
- byte[] decoded = Base64.getDecoder().decode(auth);
- userpass = new String(decoded);
- System.out.println("auth " + auth);
- System.out.println(auth.getBytes("UTF-8"));
- System.out.println("decoded " + decoded.toString());
- System.out.println("userpass " + userpass);
- }
- if (auth == null) {
- System.out.println("Null");
- exchange.getResponseHeaders().set("WWW-Authenticate", "Basic");
- exchange.getResponseHeaders().set("charset", "UTF-8");
- exchange.sendResponseHeaders(401, 0);
- exchange.close();
- } else {
- if (!userpass.equals("user:u")) {
- exchange.getResponseHeaders().set("WWW-Authenticate", "Basic");
- exchange.sendResponseHeaders(401, 0);
- exchange.close();
- } else {
- basicAuthReq(exchange);
- }
- }
- }
- private static void basicAuthReq(HttpExchange exchange) throws IOException {
- String response = "Ta strona wymaga autoryzacji";
- exchange.sendResponseHeaders(200, response.getBytes().length);
- exchange.getResponseHeaders().set("Content-Type", "text");
- OutputStream os = exchange.getResponseBody();
- os.write(response.getBytes());
- os.close();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement