2013-07-30 7 views
0

У меня есть строка следующим образом:
Maggi® awesome.Не удалось обновить документ mongodb специальными символами

Как видно, в строке есть зарегистрированный символ.

Это вход через тег ввода HTML. Я беру строку как есть, а затем пытаюсь обновить атрибут записи этой строкой - эта запись/документ затем обновляется в MongoDb тоже.

Однако, я возвращаю сообщение об ошибке «Invalid JSON: Неожиданный конец вход».

Я подозреваю, что мне нужно каким-то образом обработать специальный символ - что мне нужно сделать, чтобы сохранить строку так, как она есть в MongoDB, а затем иметь возможность получить то же самое (с символом), не получив вышеуказанную ошибку ? Есть ли что-то, что мне нужно сделать на стороне клиента, когда вы получаете значение из входного тега или что-то, что я могу сделать с серверной стороны или с обоими?

Я использую NodeJS вместе с MongoDB (и используя AngularJS), но я не думаю, что он имеет какое-либо отношение к вышесказанному.

+0

Он отлично работает в оболочке; можете ли вы предоставить код, который воспроизводит проблему? – JohnnyHK

ответ

0

MongoDB все строки действительны для UTF-8. Вполне вероятно, что вы не отправляете действительный UTF-8 в MongoDB, но вместо этого, например, имеете ® как ISO-8859-1 кодированные символы. И MongoDB этого не допускает.

Смежные вопросы