equal
deleted
inserted
replaced
35 import com.sun.net.httpserver.HttpServer; |
35 import com.sun.net.httpserver.HttpServer; |
36 import com.sun.net.httpserver.Headers; |
36 import com.sun.net.httpserver.Headers; |
37 import java.io.IOException; |
37 import java.io.IOException; |
38 import java.io.InputStream; |
38 import java.io.InputStream; |
39 import java.io.OutputStream; |
39 import java.io.OutputStream; |
|
40 import java.net.InetAddress; |
40 import java.net.InetSocketAddress; |
41 import java.net.InetSocketAddress; |
41 import java.net.URI; |
42 import java.net.URI; |
42 import java.net.http.HttpClient; |
43 import java.net.http.HttpClient; |
43 import java.net.http.HttpHeaders; |
44 import java.net.http.HttpHeaders; |
44 import java.net.http.HttpRequest; |
45 import java.net.http.HttpRequest; |
52 public class ImmutableHeaders { |
53 public class ImmutableHeaders { |
53 |
54 |
54 final static String RESPONSE = "Hello world"; |
55 final static String RESPONSE = "Hello world"; |
55 |
56 |
56 public static void main(String[] args) throws Exception { |
57 public static void main(String[] args) throws Exception { |
57 HttpServer server = HttpServer.create(new InetSocketAddress(0), 10); |
58 InetSocketAddress addr = new InetSocketAddress(InetAddress.getLoopbackAddress(), 0); |
|
59 HttpServer server = HttpServer.create(addr, 10); |
58 ExecutorService serverExecutor = Executors.newCachedThreadPool(); |
60 ExecutorService serverExecutor = Executors.newCachedThreadPool(); |
59 ExecutorService clientExecutor = Executors.newCachedThreadPool(); |
61 ExecutorService clientExecutor = Executors.newCachedThreadPool(); |
60 server.createContext("/test", new ImmutableHeadersHandler()); |
62 server.createContext("/test", new ImmutableHeadersHandler()); |
61 int port = server.getAddress().getPort(); |
63 int port = server.getAddress().getPort(); |
62 System.out.println("Server port = " + port); |
64 System.out.println("Server port = " + port); |
66 HttpClient client = HttpClient.newBuilder() |
68 HttpClient client = HttpClient.newBuilder() |
67 .executor(clientExecutor) |
69 .executor(clientExecutor) |
68 .build(); |
70 .build(); |
69 |
71 |
70 try { |
72 try { |
71 URI uri = new URI("http://127.0.0.1:" + port + "/test/foo"); |
73 URI uri = new URI("http://localhost:" + port + "/test/foo"); |
72 HttpRequest req = HttpRequest.newBuilder(uri) |
74 HttpRequest req = HttpRequest.newBuilder(uri) |
73 .headers("X-Foo", "bar") |
75 .headers("X-Foo", "bar") |
74 .headers("X-Bar", "foo") |
76 .headers("X-Bar", "foo") |
75 .GET() |
77 .GET() |
76 .build(); |
78 .build(); |