From: Rob S. <ro...@sc...> - 2005-09-26 10:35:57
|
Thinus Pollard wrote: > Hi there > > We're sending an http request to yaws. See (1). The request contains a string > called ussdString. This string is a uuencoded string > > ussdString="*116*111*AAEGAGQAABEzAABgNIUgAABRdNAABYcAAAAAAAAAgQ6+8zh0D9iBDr7zOHQP2A==1#" > > Yaws captures this data via script (2). > > In our logs we get the string as: > ussdString=\"*116*111*AAEGAGQAABEzAABgNIUgAABWEtAABYcAAAAAAAAAgQ6<space>8zh0D9iBDr7zOHQP2A==1#\" > > What's happing is that yaws is dropping the '+' character from our string and > inserting a space (verified as ascii code 32 (decimal)) in its place. > <snip some additonal info> This is correct behaviour and is due to url encoding, that is making a string safe to be send in a URL, One of the things that happens is that a space is translated into a '+' sign. Yaws 'decodes any string and thus transfers any '+' into a space. In order to have this working correctly you'll have to URL encode the string before you send it (the '+' sign will then be transferred into a %xx, which yaws will correctly decode) Regards /Rob |