Причина в том, что {"ключ": "значение"} является правильным способом кодирования строки JSON. строки {key: "value"}, которые вы видите в приложениях, обычно являются фактором удобства определения строки, поскольку до того, как этот тип структурированной строки проталкивается через HTTP, он переводится (за кулисами) в ключ {" ":" value "}.
В будущем, если у вас возникли проблемы с строкой JSON, и они обеспокоены тем, что это может быть из-за неправильного форматирования строки JSON, попробуйте вставить строку JSON в JSONlint (http://jsonlint.com/).
Если вы идете туда и попробовать эту строку, вы увидите, что она не в состоянии: {ключ: «значение»} Если попробовать это вместо этого, он будет проходить: { «ключ»: «значение»}
Надеется, что это помогает ....
EDIT Вау ... Угадайте, что это помогло бы, если бы я на самом деле читать то, что я писал. Дело в том, что выше, но у меня, должно быть, был мозговой пердит, потому что его трудно расшифровать. Итак, вот вторая попытка в этом ха ..
Причина ваш первый пример терпит неудачу, потому что эта его структура не действует в соответствии со стандартами JSON:
{route:"/tasks/4f9218a27e5c8f0000000000"} // This is invalid...
Правильный ключ/значение пары, действительный имеет как ключ и значение в двойные кавычки:
{ "route" : "/tasks/4f9218a27e5c8f0000000000" } // This IS valid.
стандарты для определения JSON строки можно увидеть здесь: http://www.json.org/
Сайт JSONLint (http://jsonlint.com) - очень хороший ресурс для быстрой проверки правильности вашей строки JSON до ее использования в реальном мире, а также отличный способ отладить строку JSON, которая может вызывать проверку проверки парсера.
Надеюсь, это помогает heh ..