Unicode in URL param?

Can I put unicode chars in a URL param value? If so… how? Right now,
in my URL params generated by Umlaut, Unicode seems to get corrupted. I
have a string with unicode in it–when sent to the browser, it displays
properly. But I put that string in a param value, and make a request,
and look at the value, and send it to the browser—now it no longer
displays correctly, the unicode char displays as two wrong chars.

Any ideas what’s going on, or how to deal with this? Thanks for any

Actually, in response to my own previous question—I hadn’t properly
isolated the bug.

Here’s what’s really going on. An external data source, not under my
control, is giving me strings that are actually “double-encoded UTF-8”
via an HTTP XML API. I can’t do anything about this data, this is the
way it comes. (Yes, the provider of this data is written in Perl. Grr.)

Is there any easy way I can somehow return this double-encoded UTF-8 to
real legitimate UTF-8 in Ruby?

Any advice?