mochijson2 lub mochijson

Koduję niektóre dane za pomocą mochijson2. Ale odkryłem, że zachowuje się dziwnie na łańcuchach jako listy.

Przykład:

mochijson2: encode („foo”).

[91, „102”, 44, „111”, 44, „111”, 93]

Gdzie „102”, „111”, „111” to $ f, $ o, $ o zakodowane jako łańcuchy 44 to przecinki, a 91 i 93 to kwadratowe hamulce.

Oczywiście, jeśli wyślę to gdzieś, dostanę ciąg „[102, 111, 111]”, co oczywiście nie jest tym, co ja.

Jeśli spróbuję

mochijson2: encode (<< "foo" >>).

[34, << "foo" >>, 34]

Ponownie otrzymuję listę dwóch podwójnych cytatów i części binarnej, w której można przetłumaczyć na binarny z list_to_binary / 1

Oto pytanie - dlaczego jest tak niespójne. Rozumiem, że istnieje problem z listą erlang, która powinna być zakodowana jako tablica json i ciąg erlang, który powinien być zakodowany jako ciąg json, ale przynajmniej może wygenerować plik binarny, gdy przekazuję go binarnie?

Drugie pytanie: Wygląda na to, że mochijson wypisuje wszystko ładnie (ponieważ używa specjalnej krotki do wyznaczenia tablic {tablica, ...})

mochijson: encode (<< "foo" >>).
"\"bla\""

Jaka jest różnica między mochijson2 a mochijson? Wydajność? Obsługa Unicode? Coś jeszcze?

Dzięki

questionAnswers(1)

yourAnswerToTheQuestion