gSoap Client through Http Proxy

HTTP Proxy Authentication with gSoap:



HTTP proxy authentication (basic) is enabled at the client-side by setting the soap.proxy_userid and soap.proxy_passwd strings to a username and password, respectively.



For example, a proxy server may request user authentication. Otherwise, access is denied by the proxy (HTTP 407 error).



Example client code fragment to set proxy server, username, and password:



struct soap soap;

soap_init(&soap);

soap.proxy_host = "xx.xx.xx.xx"; // IP or domain

soap.proxy_port = 8080;

soap.proxy_userid = "guest";

soap.proxy_passwd = "guest";

...



A client SOAP request will have the following HTTP header:



POST /XXX HTTP/1.0

Host: YYY User-Agent: gSOAP/2.2 Content-Type: text/xml;

charset=utf-8 Content-Length: nnn Proxy-Authorization: Basic Z3Vlc3Q6Z3Vlc3Q= ...



When X-Forwarded-For headers are returned by the proxy, the header can be accessed in the soap.proxy_from string.



Links:

gSOAP 2.7.10 User Guide - http://www.cs.fsu.edu/~engelen/soapdoc2.html