Drakma encodes spaces in URLs as pluses instead of "%20"s.  It also leaves the characters "$-_.!*'()" unencoded instead of the RFC3986 unencoded set: "-_.~".<br><br>This is okay for tolerant servers but for other applications it is a bug.  For example, in OAuth it is necessary to conform to RFC3986 or the signature will be incorrect for the request.<br>
<br>To make Drakma more RFC3986-compliant, replace these four lines in util.lisp:<br><br>                        (find char "$-_.!*'()," :test #'char=))<br>                     (write-char char out))<br>
                   ((char= char #\Space)<br>                     (write-char #\+ out))<br><br>with these two:<br>                        (find char "-_.~" :test #'char=))<br>                     (write-char char out))<br>
<br>Best regards,<br>Red<br>