SimpleHttpServer

import java.util.Scanner;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.InetSocketAddress;
import java.io.IOException;
import java.io.OutputStream;
import java.net.InetSocketAddress;

import com.sun.net.httpserver.HttpExchange;
import com.sun.net.httpserver.HttpHandler;
import com.sun.net.httpserver.HttpServer;

public class Test {

    public static void main(String[] args) throws Exception {
        HttpServer server = HttpServer.create(new InetSocketAddress(8000), 0);
        server.createContext("/test", new MyHandler());
        server.setExecutor(null); // creates a default executor
        server.start();
    }

    static class MyHandler implements HttpHandler {
        @Override
        public void handle(HttpExchange e) throws IOException {
            InputStream is = e.getRequestBody();
            String line = isToString(is);
            System.out.println(line);
            String response = "This is the response";
            e.sendResponseHeaders(200, response.length());
            OutputStream os = e.getResponseBody();
            os.write(response.getBytes());
            os.close();
        }
    }

    public static String isToString(InputStream is) {
        Scanner s = new Scanner(is).useDelimiter("\\A");
        return s.hasNext() ? s.next() : "";
    }

}

Execute it and go to http://localhost:8000/test

results matching ""

    No results matching ""