Также название «JavaScript Object Notation» вводит в заблуждение. Это не то же самое обозначение, которое используется в Javascript.

учаю «не правильно сформированную» ошибку в консоли ошибок Firefox 3.0.7, когда JavaScript на моей странице загружает текстовый файл, содержащий объект в формате JavaScript Object Notation. Если файл не содержит ничего, кроме объекта JSON, он выдает ошибку. Если я оберну объект в теги <document> </ document>, это не приведет к ошибке. Запрос выполняется в любом случае, поэтому я мог просто проигнорировать его, но я не хочу, чтобы мой журнал ошибок заполнялся этими сообщениями.

Вот пример кода для иллюстрации проблемы. Во-первых, «плохо сформированный» файл с именем «data.json»:

{ a: 3 }

Теперь немного кода для загрузки файла:

var req = new XMLHttpRequest();
req.open("GET", "data.json");
req.send(null);

Который вызывает следующую ошибку в консоли ошибок Firefox:

не хорошо сформирован
file: //path/to/data.json Строка: 1
{а: 3}
- ^

Если data.json изменен на это:

<document>{ a: 3 }</document>

Там нет ошибки. Я предположил, что это жалуется, потому что простой файл JSON не является правильно сформированным XML-документом, поэтому я попытался переопределить тип MIME перед вызовом «send», чтобы заставить его загружаться как обычный текст, но это не сработало.

var req = new XMLHttpRequest();
req.open("GET", "data.json");
req.overrideMimeType("text/plain");
req.send(null);
// Still produces an error!

Я собираюсь продолжить упаковывать мои данные JSON в XML-документ, чтобы обойти любую проверку, выполняемую XMLHttpRequest, но я хотел бы знать, есть ли способ заставить его просто загружать простой текст некритически и не пытаться подтвердить это. Кроме того, есть ли другой метод загрузки данных, кроме XMLHttpRequest, который можно использовать с простым текстом?

Ответы на вопрос(7)

Ваш ответ на вопрос