Работающая библиотека Json для Javascript? - PullRequest
1 голос
/ 18 ноября 2008

Я зашел на http://www.json.org/js.html и скачал json2.js, думая, что все будет в порядке, ведь этот сайт находится на вершине в поиске Google по 'json javascript' - также у них есть действительно крутой URL :)

Так что я немного поработал с ним, и это выглядело нормально, но теперь у меня начались проблемы с ним - он просто не будет анализировать некоторые вещи, которые я кодирую, с помощью JSON .NET сериализатора Newtonsoft. Хорошо, так что, возможно, .net seralizer не работает? Не то, как я это вижу - он создает прекрасную строку JavaScript, которая выглядит как идеальный JSON.

Проблема возникает, когда приходится кодировать одну кавычку и, возможно, двойные кавычки ". Взгляните на эти примеры (только части полной строки)

{"Id":10651,"Text":"\'69"}
{"Id":184,"Text":"13\""}

Я что-то упустил? это часть большей строки, и все они помещаются в переменную javascript, например:

var jsonObject = '[{"Id":46,"Type":2,.....................

Я думаю, что необходимо избегать одинарных кавычек в строке, чтобы избежать конфликта с переносом строки в одинарные кавычки, и избегать двойных кавычек, чтобы избежать конфликта с форматом json?

Так что я либо делаю что-то не так, либо json2.js делает это неправильно? Или, может быть, .net json все испортил - я думаю, что я все испортил, но я пытался сделать все, чтобы помочь с синтаксическим анализом, например, экранирование / удаление и т. Д. Перед сериализацией / десериализации.

Ответы [ 2 ]

0 голосов
/ 18 ноября 2008

Хорошо, я решил проблему. На самом деле намек, который Джоэл дал мне в комментарии на мой вопрос, чтобы попытаться оценить его, вместо этого привел меня к мысли, что я могу доверять этому json, я пытаюсь разобрать / оценить, и так как я знаю это во время создания страницы, почему не жестко закодировать его в веб-страницу КАК объект - без экранирования кавычек или чего-либо еще и без оценки и, что лучше всего - без строк: P

Итак, спасибо вам обоим, Джоэл, и вам нравится :) 1003 *

0 голосов
/ 18 ноября 2008

Это может быть лидерство ...

http://binnyva.blogspot.com/2006/10/invalid-json.html

А если вы сериализуетесь, возможно, защитите себя сериализацией до ' и '.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...