[undertow-dev] HttpServerExchange post data

Stuart Douglas sdouglas at redhat.com
Sun Jan 4 18:19:37 EST 2015


If you just want access to the raw data you have a 2 options:

HttpServerExchange.getRequestChannel()
HttpServerExchange.getInputStream() (exchange should have startBlocking called, and you need to dispatch to a worker thread so as not to block an IO thread)

If you want access to parsed form/multipart data then you can use io.undertow.server.handlers.form.EagerFormParsingHandler, and the use exchange.gutAttachment(FormDataParser.FORM_DATA) to get access to the parsed data.

Stuart
 

----- Original Message -----
> From: "Mike Stefaniak" <mstefaniak at choicestream.com>
> To: undertow-dev at lists.jboss.org
> Sent: Friday, 2 January, 2015 10:32:35 AM
> Subject: [undertow-dev] HttpServerExchange post data
> 
> I can't figure out how to get the content of post data
> 
> My server start
> 
> Undertow.builder()
> .addHttpListener(8080, "0.0.0.0")
> .setHandler(Handlers.routing().post("/bid", new BidHandler()))
> .build()
> .start();
> 
> And the handler class
> 
> public final class BidHandler implements HttpHandler {
> 
> @Override
> public void handleRequest(final HttpServerExchange exchange) throws Exception
> {
> ........
> }
> }
> 
> 
> If I make a curl request like so
> 
> curl -H "Content-Type: application/json" -X POST -i -d '{"some": "value"}'
> http://127.0.0.1:8080/bid
> 
> It gets to the handler, but I can't figure out to access the post data from
> the request
> 
> Thanks
> 
> 
> 
> 
> _______________________________________________
> undertow-dev mailing list
> undertow-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/undertow-dev


More information about the undertow-dev mailing list