mirror of
https://github.com/apache/jclouds.git
synced 2025-03-06 08:19:13 +00:00
jclouds should not decode query strings that are passed to create HTTP requests. This is problematic because in some cases a wrong request may be generated. The most obvious example is if one passes the "+" character. For example, the following query parameter: "users=me+you" is stored by the URI builder as "me you" and subsequently appears in the request as "users=me%20you", as opposed to "users=me%2Byou" (%2b is percent encoding for "+"). This is not currently a problem because jclouds relies on the isUrlEncoded() method to check if a query parameter should be decoded and the situation above is avoided. This PR attempts to suggest an alternative (and what I believe is simpler) approach: on the path of crafting requests, jclouds should only *encode*, not decode strings. Specifically, jclouds should _never_ be in a situation where it relies on the isUrlEncoded() method.
jclouds
Apache jclouds is an open source multi-cloud toolkit for the Java platform that gives you the freedom to create applications that are portable across clouds while giving you full control to use cloud-specific features.
For more information about using or contributing to jclouds, please visit our website at jclouds.apache.org.
License
Copyright (C) 2009-2013 The Apache Software Foundation
Licensed under the Apache License, Version 2.0
Languages
Java
99.4%
Shell
0.5%