rdio/rdio-simple — Issue #5: 401 invalid signature response when any params aren't basic alphanumeric chars in ruby wrapper
Author: dannyhertz
Created: 2012-01-10 05:06:15+00:00
State: open

I had to hack the om.rb file and change the percent_encode method to the following:

def percent_encode(s)
chars = s.chars.map do |c|
if ((c >= '0' and c <= '9') or
(c >= 'A' and c <= 'Z') or
(c >= 'a' and c <= 'z') or
c == '-' or c == '.' or c == '_' or c == '~')
c
elsif(c == ' ') # added until rdio fixes their stuff
'%%%02X' % c.unpack('c')
else
CGI.escape(c)
end
end
chars.join
end

I don't get why you aren't using standard url encoding anyway. Am I missing something? Thanks!