qpid-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Gordon Sim <g...@redhat.com>
Subject Re: Using QPID behind HTTP proxy
Date Fri, 26 Aug 2016 11:13:33 GMT
On 26/08/16 11:13, RatTac@web.de wrote:
> I am using the c++ messaging API which (I think) only supports 0-9?

No, the c++ messaging API supports both 0-10 and 1.0. It does not at 
present support websockets however.

> Anyhow,
> it would require me to manually send the AMQP commands using websockets
> right? I was searching for something like the QPID c++ messaging api where I
> could specify a HTTP proxy. In my understanding something like this does not
> exist right?

At present I am not aware of any c++ AMQP API that speaks websockets (or 
tunnels over HTTP in any other way) 'out of the box'. (There are 
javascript libraries that can speak AMQP over websockets though).

It is conceivable that the proton c++ event driven API could support 
websockets at some time in the future. However at present it is 
something you would have to implement yourself.

> One alternative that I imagined would be to send the request from the client
> via HTTP POST to a webserver (e.g. using curl with proxy setting). This
> webserver would then connect to the broker (in the same network) and send
> the answer back. I'm not too experienced with these things, but in my
> understanding this would be the most easy workaround to solve this problem
> without switching to another broker / message queue concept right? If there
> is anything more suitable for my usecase, please let me know...

There are libraries that help proxying between websockets and tcp. E.g. 
https://git1-us-west.apache.org/repos/asf/qpid-proton/repo?p=qpid-proton.git;a=blob;f=examples/javascript/messenger/ws2tcp.js;h=1d90543eb9e8da353d4c8d8b8bdd1c1e8dae2a5f;hb=HEAD

or pythons websockify.

You can as you point out do the same for HTTP, however there is a less 
direct equivalence between the protocols there so you have to make some 
decisions about how to map between them. It should not be terribly hard 
though. A very trivial example of something similar: 
https://git1-us-west.apache.org/repos/asf/qpid-proton/repo?p=qpid-proton.git;a=blob;f=examples/python/client_http.py;h=bf65639702d24c6c6991e1c93c16210458778dbc;hb=HEAD


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org
For additional commands, e-mail: users-help@qpid.apache.org


Mime
View raw message