Voglio verificare se il testo inserito da un utente è JSON valido. So che posso facilmente ottenibile usando qualcosa di simile:Convalidare JSON da Mongo?
function IsJsonString(str) {
try {
JSON.parse(str);
} catch (e) {
return false;
}
return true;
}
Il mio problema è con JSON che viene da Mongo, che è avvolto in ObjectId
, ISODate
, vale a dire:
{
"_id" : ObjectId("5733b42c66beadec3cbcb9a4"),
"date" : ISODate("2016-05-11T22:37:32.341Z"),
"name" : "KJ"
}
Questo non è valido JSON. Come potrei andare sulla convalida di JSON pur consentendo qualcosa come sopra?
Questo fa sicuramente il trucco! L'unica correzione che ho apportato è stata invece di "" "$ 1 (\" $ 2 \ ")" '", ho messo virgolette singole attorno al $ 2'' "$ 1 (\ '$ 2 \')" ''quindi viene visualizzato come' " ObjectId ('1234') "' invece di '" ObjectId ("1234") "', in cui le virgolette escono da sole. – KJ3