package com.packt.learnjava.ch11_network; import com.sun.net.httpserver.HttpExchange; import com.sun.net.httpserver.HttpHandler; import com.sun.net.httpserver.HttpServer; import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.OutputStream; import java.net.InetSocketAddress; public class UrlServer { public static void main(String[] args) throws Exception { HttpServer server = HttpServer.create(new InetSocketAddress(3333), 0); server.createContext("/something", new PostHandler()); server.setExecutor(null); server.start(); } static class PostHandler implements HttpHandler { public void handle(HttpExchange exch) { System.out.println(); //to skip the row //System.out.println(exch.getRequestURI()); //prints: /something //System.out.println(exch.getHttpContext().getPath()); //prints: /something try(BufferedReader in = new BufferedReader( new InputStreamReader(exch.getRequestBody())); OutputStream os = exch.getResponseBody()){ System.out.println("Received as body:"); in.lines().forEach(l -> System.out.println(" " + l)); String confirm = "Got it! Thanks."; exch.sendResponseHeaders(200, confirm.length()); os.write(confirm.getBytes()); } catch (Exception ex){ ex.printStackTrace(); } } } }