6168Passing & via SOAP::Lite
- Jul 4, 2008Hi
I suspect this may be obvious but I am not clear on what happens where.
I have to make a SOAP method call to a 3rd party, passing a return URL as
one of the parameters, and then redirect to the url they give me back. They
then redirect back to the URL I passed them. The URL has GET srtyle CGI
parameters which I was using ; to seperate as with an older version od SOAP
it just did not work at all with & (also I understand ; is the new
standard). Unfortunatle we found some circumstances out of our control where
; breaks things so I changed back to &. Sure enough this broke the SOAP
requests again but before I started askin questions I updated to the most
recent SOAP::Lite module and it appeared to start working. On closer
examination the QUERY_STRING of the request after the redirection back to us
contains '&'s instead of '&'s.
Now one thing that confused me is that this does not seem to break things
under all circumstances (I realise this is OT but does anyone know if CGI.pm
auto unescapes & ?)
However it does seem to be causing weirdnesses in some scenarios.
So the question is what is the correct way to pass & as a SOAP::Lite method
parameter so that it is interpreted as a & at the server side? Is it as
simple as escaping it before making the SOAP method call? Or is this
happening automatically? In which case there is nothing I can do to get the
QUERY_STRING correct at source?
If anyone can explain or point me in the right direction to find out exactly
what happens behind the scenes with escaping/unescaping characters in
SOAP::Lite it would really help me to decide the best way of doing this...
- Next post in topic >>