2011-10-15 51 views
4

「\ 360 \ 237 \ 230 \ 204」是標準的表情符號圖標(U + 1f604)處理4字節Unicode表情符號時,ruby JSON lib中的錯誤?

當我嘗試在說出JSON的服務器端點中向下發送此字符時,響應被破壞。原因如下:

>> JSON({:a => "\360\237\230\204"}.to_json) 
=> {"a"=>"\357\230\204"} 

正如您所看到的,字符串的第一部分已被JSON庫修改。

這是一個已知的錯誤,是否有解決方法?或者不知何故,這是因爲以十六進制返回的值是f604而不是1f604?

謝謝!

+1

我沒有得到1.9.2中相同的行爲。它顯示'\ u1F604'。 – d11wtq

+1

@ d11wtq:我看到使用1.9.2和Rails 3.1控制檯報告的行爲。 –

+0

@ muistooshort,是的,我剛剛在IRB中嘗試過。無論如何,看起來問題已經解決了:) – d11wtq

回答

相關問題