Skip to content

Instantly share code, notes, and snippets.

@michael-simons
Created October 13, 2020 12:40
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save michael-simons/01312ee2abd481f807f7758d1d43a7b0 to your computer and use it in GitHub Desktop.
Save michael-simons/01312ee2abd481f807f7758d1d43a7b0 to your computer and use it in GitHub Desktop.
import org.eclipse.jetty.http.HttpHeader;
import org.eclipse.jetty.http.HttpParser;
import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.servlet.ServletContextHandler;
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class Peng
{
public static void main( String... a ) throws Exception
{
var context = new ServletContextHandler( ServletContextHandler.SESSIONS );
context.setContextPath( "/" );
var jettyServer = new Server( 7921 );
jettyServer.setHandler( context );
jettyServer.setRequestLog(
( request, response ) -> System.out.println( "Accept reaching server " + request.getHeader( "ACCEPT" ) ) );
try
{
jettyServer.start();
var client = HttpClient.newHttpClient();
for ( String s : new String[]{"a", "true", "A", "TRUE"} )
{
var accept = "application/json;foo=" + s;
System.out.println( "With accept " + accept );
var builder1 = HttpRequest
.newBuilder( URI.create( "http://localhost:7921" ) )
.header( "ACCEPT", accept )
.GET()
.build();
client.send( builder1, HttpResponse.BodyHandlers.discarding() )
.statusCode();
/*
HttpHeader.CACHE.clear();
HttpParser.CACHE.clear();
*/
}
}
finally
{
jettyServer.stop();
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment