Welcome!

Welcome to the official BlackBerry Support Community Forums.

This is your resource to discuss support topics with your peers, and learn from each other.

inside custom component

Web and WebWorks Development

Reply
New Developer
Posts: 1
Registered: ‎04-30-2009
My Device: Not Specified

Redirect fails with parameters

After a lot of investigation we think we've discovered a bug in the Blackberry Internet browser, used on the following models (at least):

BlackBerry8100/4.2.0
BlackBerry8100/4.5.0.52
BlackBerry8110/4.3.0
BlackBerry8120/4.5.0.52
BlackBerry8310/4.2.2
BlackBerry8700/4.2.1
BlackBerry8800/4.2.1
BlackBerry8820/4.2.2
BlackBerry8830/4.2.2
BlackBerry8900/4.6.1.101
BlackBerry8900/4.6.1.109
BlackBerry9000/4.6.0.125
BlackBerry9000/4.6.0.221

When our server issues an HTTP redirect (302) the redirect location is being converted to lowercase by the browser up until the first path separator (or equals sign), probably with the intention of only affecting the hostname. However, when the location is root and has a query parameter, this logic also converts the parameter to lowercase, which is wrong.

For example, if we redirect the browser to a root page with a parameter:
  HTTP/1.0 302 Moved Temporarily                                                                                                                                                
  Location: http://www.example.com?_ThisIsCaseSensitive=1

The Blackberry browsers incorrectly issue a:
  GET /?_thisiscasesensitive=1

Whereas, if we explicitly give the root path:
  HTTP/1.0 302 Moved Temporarily                                                                                                                                                
  Location: http://www.example.com/?_ThisIsCaseSensitive=1

Then it works and the Blackberry browsers issue a:
  GET /?_ThisIsCaseSensitive=1