You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hc.apache.org by "Shaw, Ryan" <ry...@unc.edu> on 2023/03/22 16:27:59 UTC
421 Misdirected Request / empty reply from H2FileServerExample
Hello,
I am trying to run the H2FileServerExample [1] and test it out using curl. However, I only get empty responses back.
Starting the server, I see in the log:
Listening on /[0:0:0:0:0:0:0:0]:8080
Then I use curl to send a request:
curl --http2-prior-knowledge 'http://[0:0:0:0:0:0:0:0]:8080/foo/bar’
This results in:
curl: (52) Empty reply from server
And in the server log, I see:
/[0:0:0:0:0:0:0:1]:52142 (1) << :method: GET
/[0:0:0:0:0:0:0:1]:52142 (1) << :path: /foo/bar
/[0:0:0:0:0:0:0:1]:52142 (1) << :scheme: http
/[0:0:0:0:0:0:0:1]:52142 (1) << :authority: [::]:8080
/[0:0:0:0:0:0:0:1]:52142 (1) << user-agent: curl/8.0.1
/[0:0:0:0:0:0:0:1]:52142 (1) << accept: */*
/[0:0:0:0:0:0:0:1]:52142 (1) >> :status: 421
/[0:0:0:0:0:0:0:1]:52142 (1) >> date: Wed, 22 Mar 2023 16:11:56 GMT
/[0:0:0:0:0:0:0:1]:52142 (1) >> server: Apache-HttpCore/5.2.1 (Java/17.0.5)
/[0:0:0:0:0:0:0:1]:52142 (1) >> content-type: text/plain; charset=ISO-8859-1
(Note that curl doesn’t show the 421 status code; it just gets an empty reply.)
What do I need to do to run this example?
Thanks,
Ryan
[1] https://github.com/apache/httpcomponents-core/blob/master/httpcore5-h2/src/test/java/org/apache/hc/core5/http2/examples/H2FileServerExample.java
Re: 421 Misdirected Request / empty reply from H2FileServerExample
Posted by "Shaw, Ryan" <ry...@unc.edu>.
Never mind, the problem was that I was not specifying a Host on my request. This works:
curl -D - -H 'Host: localhost' --http2-prior-knowledge 'http://[0:0:0:0:0:0:0:0]:8080/foo/bar'
> On Mar 22, 2023, at 12:27 PM, Shaw, Ryan <ry...@unc.edu> wrote:
>
> Hello,
>
> I am trying to run the H2FileServerExample [1] and test it out using curl. However, I only get empty responses back.
>
> Starting the server, I see in the log:
>
> Listening on /[0:0:0:0:0:0:0:0]:8080
>
> Then I use curl to send a request:
>
> curl --http2-prior-knowledge 'http://[0:0:0:0:0:0:0:0]:8080/foo/bar’
>
> This results in:
>
> curl: (52) Empty reply from server
>
> And in the server log, I see:
>
> /[0:0:0:0:0:0:0:1]:52142 (1) << :method: GET
> /[0:0:0:0:0:0:0:1]:52142 (1) << :path: /foo/bar
> /[0:0:0:0:0:0:0:1]:52142 (1) << :scheme: http
> /[0:0:0:0:0:0:0:1]:52142 (1) << :authority: [::]:8080
> /[0:0:0:0:0:0:0:1]:52142 (1) << user-agent: curl/8.0.1
> /[0:0:0:0:0:0:0:1]:52142 (1) << accept: */*
> /[0:0:0:0:0:0:0:1]:52142 (1) >> :status: 421
> /[0:0:0:0:0:0:0:1]:52142 (1) >> date: Wed, 22 Mar 2023 16:11:56 GMT
> /[0:0:0:0:0:0:0:1]:52142 (1) >> server: Apache-HttpCore/5.2.1 (Java/17.0.5)
> /[0:0:0:0:0:0:0:1]:52142 (1) >> content-type: text/plain; charset=ISO-8859-1
>
> (Note that curl doesn’t show the 421 status code; it just gets an empty reply.)
>
> What do I need to do to run this example?
>
> Thanks,
> Ryan
>
> [1] https://github.com/apache/httpcomponents-core/blob/master/httpcore5-h2/src/test/java/org/apache/hc/core5/http2/examples/H2FileServerExample.java
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@hc.apache.org
For additional commands, e-mail: dev-help@hc.apache.org