5
我有一些內容(HTML)正被編碼爲這個JavaScript(由this page)的結果,發到我的Rails應用程序:ruby/rails相當於javascript decodeURIComponent?
function encode_utf8_b64(string) {
return window.btoa(unescape(encodeURIComponent(string)));
}
的對應的js代碼,讓它回到原來是這樣的:
function decode_utf8_b64(string) {
return decodeURIComponent(escape(window.atob(string)));
}
我的問題是,是否有相當於ruby的decodeURIComponent()?到目前爲止,我有這一點,得到它的出路的一部分,但我錯過decodeURIComponent的最後一步:
CGI::escape(Base64.decode64(string))
thx,我已經更新了答案:) – olistik
謝謝 - 當我應用URI.unescape或URI.decode時,我得到一個「UTF-8中無效的字節序列」錯誤。看起來CGI :: escape()的輸出是US-ASCII。當我嘗試使用Iconv在應用URI.unescape之前將字符串轉換爲UTF-8時,它停止拋出錯誤,但似乎只是刪除了一個解碼步驟,因此輸出仍然很亂。有小費嗎?或者,也許這是一個單獨的問題。 – bobfet1