2010-03-18 25 views
3

我對CouchDB非常困惑:如果我發送一個PUT請求,並將一些JSON字符串字段編碼爲UTF-8,則非7位ASCII字符將轉換爲「\ uXXXX」轉義序列。有什麼辦法可以告訴它不要逃離UNICODE嗎?CouchDB如何處理UTF-8?

回答

5

這些\uXXXX是在Javascript中編碼UTF-8字符的正確方法。

考慮CouchDB的使用JSON (即使用Javascript數據)訪問,這些序列應該用數據時interepreted,這不應該是一個問題。

+0

我在檢索存儲到CouchDB存儲桶的DBCS字符時也遇到了問題。有人能幫忙嗎? – Jaynil 2015-02-05 10:17:04

0

CouchDB使用mochiweb來處理JSON編碼/解碼。

有一個參數做編碼例程巫婆告訴輸出沒有那些\uXXXX

應用補丁簡單的方法是:

  1. 得到的CouchDB源
  2. 編輯的src /受Mochiweb/mochijson2.erl
  3. 查找-record(encoder, {handler=null, utf8=false}).圍繞線45
  4. 更改爲utf8=true
  5. 化妝清潔;使;使安裝

我發現克里斯·安德森http://erlangine.feautec.pp.ru/?p=232的討論,它告訴我有機會得到這種行爲在箱子外面,如果有人關注,以適當的補丁CouchDB的。