You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@camel.apache.org by Willem jiang <wi...@gmail.com> on 2013/11/07 10:23:08 UTC

NettyHttpProducer Request URI

Hi team,

I just found NettyHttpProducer sets the Request URI with the absoluteURI like  

GET http://www.w3.org/pub/WWW/TheProject.html.

But I found HttpClient set the Request URI with absolutePath like
  
GET /pub/WWW/TheProject.html  
Host: www.w3.org

From the HTTP1.1 RFC[1], these two Request URI are all OK. But for my experience it could be better if NettyHttpProducer can just set the Request URI with absolutePath.
In this way, the request can be proxied without changing anything. Such as I can use TCPMonitor the check the request and response between the NettyHttpProducer and back end server without changing anything.

Any thought?

[1]http://www.w3.org/Protocols/rfc2616/rfc2616-sec5.html
--  
Willem Jiang

Red Hat, Inc.
Web: http://www.redhat.com
Blog: http://willemjiang.blogspot.com (http://willemjiang.blogspot.com/) (English)
          http://jnn.iteye.com (http://jnn.javaeye.com/) (Chinese)
Twitter: willemjiang  
Weibo: 姜宁willem






Re: NettyHttpProducer Request URI

Posted by Willem jiang <wi...@gmail.com>.
Maybe we should let camel-netty-http support HTTP 1.0 out of box.
Current it just use the HTTP 1.1 by default.


--  
Willem Jiang

Red Hat, Inc.
Web: http://www.redhat.com
Blog: http://willemjiang.blogspot.com (http://willemjiang.blogspot.com/) (English)
          http://jnn.iteye.com (http://jnn.javaeye.com/) (Chinese)
Twitter: willemjiang  
Weibo: 姜宁willem





On Friday, November 8, 2013 at 9:19 PM, Aki Yoshida wrote:

> Hi Willem,
> I agree with you that netty should use the path.
> but what is the benefit of using the full url? I guess the http 1.1
> was changed to allow the full url so that the proxy doesn't need to
> rewrite the request, could it be? in that case, that will be another
> argument for the client to be actually using the path instead of the
> url in this case.
>  
> regards, aki
>  
>  
>  
>  
> 2013/11/7 Willem jiang <willem.jiang@gmail.com (mailto:willem.jiang@gmail.com)>:
> > Hi team,
> >  
> > I just found NettyHttpProducer sets the Request URI with the absoluteURI like
> >  
> > GET http://www.w3.org/pub/WWW/TheProject.html.
> >  
> > But I found HttpClient set the Request URI with absolutePath like
> >  
> > GET /pub/WWW/TheProject.html
> > Host: www.w3.org (http://www.w3.org)
> >  
> > From the HTTP1.1 RFC[1], these two Request URI are all OK. But for my experience it could be better if NettyHttpProducer can just set the Request URI with absolutePath.
> > In this way, the request can be proxied without changing anything. Such as I can use TCPMonitor the check the request and response between the NettyHttpProducer and back end server without changing anything.
> >  
> > Any thought?
> >  
> > [1]http://www.w3.org/Protocols/rfc2616/rfc2616-sec5.html
> > --
> > Willem Jiang
> >  
> > Red Hat, Inc.
> > Web: http://www.redhat.com
> > Blog: http://willemjiang.blogspot.com (http://willemjiang.blogspot.com/) (English)
> > http://jnn.iteye.com (http://jnn.javaeye.com/) (Chinese)
> > Twitter: willemjiang
> > Weibo: 姜宁willem
>  




Re: NettyHttpProducer Request URI

Posted by Aki Yoshida <el...@gmail.com>.
Hi Willem,
I agree with you that netty should use the path.
but what is the benefit of using the full url? I guess the http 1.1
was changed to allow the full url so that the proxy doesn't need to
rewrite the request, could it be? in that case, that will be another
argument for the client to be actually using the path instead of the
url in this case.

regards, aki




2013/11/7 Willem jiang <wi...@gmail.com>:
> Hi team,
>
> I just found NettyHttpProducer sets the Request URI with the absoluteURI like
>
> GET http://www.w3.org/pub/WWW/TheProject.html.
>
> But I found HttpClient set the Request URI with absolutePath like
>
> GET /pub/WWW/TheProject.html
> Host: www.w3.org
>
> From the HTTP1.1 RFC[1], these two Request URI are all OK. But for my experience it could be better if NettyHttpProducer can just set the Request URI with absolutePath.
> In this way, the request can be proxied without changing anything. Such as I can use TCPMonitor the check the request and response between the NettyHttpProducer and back end server without changing anything.
>
> Any thought?
>
> [1]http://www.w3.org/Protocols/rfc2616/rfc2616-sec5.html
> --
> Willem Jiang
>
> Red Hat, Inc.
> Web: http://www.redhat.com
> Blog: http://willemjiang.blogspot.com (http://willemjiang.blogspot.com/) (English)
>           http://jnn.iteye.com (http://jnn.javaeye.com/) (Chinese)
> Twitter: willemjiang
> Weibo: 姜宁willem
>
>
>
>
>