[drakma-devel] Regarding URL encoding...

Joshua TAYLOR tayloj at cs.rpi.edu
Wed Jul 21 16:24:41 UTC 2010


On Wed, Jul 21, 2010 at 11:46 AM, Herbert Snorrason <methanal at gmail.com> wrote:
> In any case, the attached patch updates url-encode to RFC3986 (or at
> least only passes that standard's "unreserved characters" through) and
> exposes it.

I suspect that the original portions of

-                        (find char "$-_.!*'()," :test #'char=))
+                        (find char "-_.~" :test #'char=))
                      (write-char char out))
-                   ((char= char #\Space)
-                     (write-char #\+ out))

are based on RFC 1738's more restricted list of characters:

   Thus, only alphanumerics, the special characters "$-_.+!*'(),", and
   reserved characters used for their reserved purposes may be used
   unencoded within a URL. [1]

Since request parameters (which could include URIs) might appear in
the HTTP request's URL, the parameters need to be URL encoded, not
just composed of valid URI characters.

[1] http://www.rfc-editor.org/rfc/rfc1738.txt

//JT

-- 
Joshua Taylor, http://www.cs.rpi.edu/~tayloj/




More information about the Drakma-devel mailing list