Loading ...
Sorry, an error occurred while loading the content.

6168Passing & via SOAP::Lite

Expand Messages
  • Mark Knoop
    Jul 4, 2008
    • 0 Attachment

      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...

    • Show all 4 messages in this topic