The production proxy server converts space characters in POSTed data  to '+', but 
leaves '+' characters alone.  A receiving website can't tell, when it sees a '+' 
whether it was an original '+', or whether it started life as a ' '.

As an example, a POST of:
abc 123+456
would be received as:
abc+123+456 

A workaround for this is to %-encode the plus characters as %2B. 
A POST of:
abc 123%2B456
would be received as:
abc+123%2B456

However, the url-encoding has changed in the prerelease server. If LZ77 conversion is 
used (ctpConvNoneLZ77), then neither the space nor the + character is encoded, so
a POST of:
abc 123+456
would be received as:
abc 123+456


If LZ77 conversion is not used (ctpConvNone), then space characters are converted to 
'+', but, in addition, '+' characters are %-encoded to %2b.
So, a POST of:
abc 123+456
would be received as:
abc+123%2B456

However, in this non-LZ77 case, it also always %-encodes the % character.
Thus, the workaround version POST of:
abc 123%2B456
is seen by the server ase:
abc+123%252B456


The problem comes about if you've got code that wants to work with both the production 
and pre-release servers. If your app doesn't %-encode the plus character as %2B, the 
production server will cause ' ' and '+' to both map to '+'. On the other hand, if you 
do %-encode the plus, then the pre-release server will %-encode the % you used for 
encoding.

What's a compatible application to do?

Testing done with POSE 3.0a7, Test, INetLow, and the very handy URL 
<http://207.175.161.68/scripts/posttext.dll> that displays the received POSTed data.

Thanks,

Neil Rhodes
[EMAIL PROTECTED]
--
For information on using the Palm Developer Forums, or to unsubscribe, please see 
http://www.palmos.com/dev/tech/support/forums/

Reply via email to