如何解析对象不以逗号分隔的JSON字符串? [英] How can I parse a JSON string in which objects are not comma separated?

查看:117
本文介绍了如何解析对象不以逗号分隔的JSON字符串?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我一直在尝试解析我从API获取的这个JSON。它似乎没有用。当我尝试将整个响应传递给对象或数组时,它会将整个响应插入到单个对象或数组中。我只是发布了API响应而不是我尝试过的代码:

I have been trying to parse this JSON that I am getting from an API. It just doesn't seem to work. It inserts the whole response into a single object or array when I try to pass it into an object or array. I'm just posting the API response and not my code that I tried:

{"canonical_url": "http://magento2-demo.nexcess.net/"}{"shop_properties": {"is_hypernode": false, "hypernode_without_magento": false, "loadtime_milliseconds": 638}}{"admin_url": null}{"security.supee5344": {"magento2": false, "resultString": "backend url required", "riskRating": "low", "result": "unkn", "magento1": true, "cloudflareCacheHit": null}}{"security.supee5994": {"magento2": false, "resultString": "installed", "riskRating": "low", "result": "ok", "magento1": true, "cloudflareCacheHit": null}}{"security.ransomware": {"magento2": true, "resultString": "safe", "riskRating": "low", "result": "ok", "magento1": true, "cloudflareCacheHit": null}}{"security.cart2quoterce": {"magento2": false, "resultString": "safe", "riskRating": "low", "result": "ok", "magento1": true, "cloudflareCacheHit": null}}{"security.ajaxcartrce": {"magento2": false, "resultString": "safe", "riskRating": "low", "result": "ok", "magento1": true, "cloudflareCacheHit": null}}{"security.opendev": {"magento2": true, "resultString": "safe", "riskRating": "low", "result": "ok", "magento1": true, "cloudflareCacheHit": null}}{"security.openversioncontrol": {"magento2": true, "resultString": "safe", "riskRating": "low", "result": "ok", "magento1": true, "cloudflareCacheHit": null}}{"security.sslcheck": {"magento2": true, "resultString": "misconfigured", "riskRating": "medium", "result": "fail", "magento1": true, "cloudflareCacheHit": null}}{"security.guruincinfection": {"magento2": true, "resultString": "safe", "riskRating": "low", "result": "ok", "magento1": true, "cloudflareCacheHit": null}}{"security.creditcardhijack": {"magento2": true, "resultString": "safe", "riskRating": "low", "result": "ok", "magento1": true, "cloudflareCacheHit": null}}{"security.visbot": {"magento2": false, "resultString": "safe", "riskRating": "low", "result": "ok", "magento1": true, "cloudflareCacheHit": null}}{"security.cryptojacking": {"magento2": true, "resultString": "safe", "riskRating": "low", "result": "ok", "magento1": true, "cloudflareCacheHit": null}}{"security.outdatedserverversion": {"magento2": true, "resultString": "unknown", "riskRating": "low", "result": "unkn", "magento1": true, "cloudflareCacheHit": null}}{"security.amastyopendownload": {"magento2": false, "resultString": "safe", "riskRating": "low", "result": "ok", "magento1": true, "cloudflareCacheHit": null}}{"security.cacheleak": {"magento2": true, "resultString": "safe", "riskRating": "low", "result": "ok", "magento1": true, "cloudflareCacheHit": null}}{"security.openmagmi": {"magento2": false, "resultString": "safe", "riskRating": "low", "result": "ok", "magento1": true, "cloudflareCacheHit": null}}{"security.webforms": {"magento2": false, "resultString": "safe", "riskRating": "low", "result": "ok", "magento1": true, "cloudflareCacheHit": null}}{"security.bruteforce": {"magento2": false, "resultString": "protected", "riskRating": "low", "result": "ok", "magento1": true, "cloudflareCacheHit": null}}{"security.magversion": {"magento2": true, "resultString": "CE 2.1.0 - 2.1.2", "riskRating": "high", "result": "fail", "magento1": true, "cloudflareCacheHit": null}}{"security.supee6788": {"magento2": false, "resultString": "installed", "riskRating": "low", "result": "ok", "magento1": true, "cloudflareCacheHit": null}}{"security.supee8788": {"magento2": false, "resultString": "unknown", "riskRating": "low", "result": "unkn", "magento1": true, "cloudflareCacheHit": null}}{"security.supee9652": {"magento2": false, "resultString": "safe", "riskRating": "low", "result": "ok", "magento1": true, "cloudflareCacheHit": null}}{"security.supee10570": {"magento2": false, "resultString": "patched", "riskRating": "low", "result": "ok", "magento1": true, "cloudflareCacheHit": null}}{"security.supee10752": {"magento2": false, "resultString": "patched", "riskRating": "low", "result": "ok", "magento1": true, "cloudflareCacheHit": null}}{"security.supee6285": {"magento2": false, "resultString": "unknown", "riskRating": "low", "result": "unkn", "magento1": true, "cloudflareCacheHit": null}}{"security.supee6482": {"magento2": false, "resultString": "unknown", "riskRating": "low", "result": "unkn", "magento1": true, "cloudflareCacheHit": null}}{"security.exposedapi": {"magento2": true, "resultString": "safe", "riskRating": "low", "result": "ok", "magento1": false, "cloudflareCacheHit": null}}{"security.supee10266": {"magento2": false, "resultString": "backend url required", "riskRating": "low", "result": "unkn", "magento1": true, "cloudflareCacheHit": null}}{"security.supee9767": {"magento2": false, "resultString": "unknown", "riskRating": "low", "result": "unkn", "magento1": true, "cloudflareCacheHit": null}}{"security.supee10415": {"magento2": false, "resultString": "unknown", "riskRating": "low", "result": "unkn", "magento1": true, "cloudflareCacheHit": null}}{"security.supee7405": {"magento2": false, "resultString": "unknown", "riskRating": "low", "result": "unkn", "magento1": true, "cloudflareCacheHit": null}}


推荐答案

https://www.npmjs.com/package/really-relaxed-json
可以帮到你。不幸的是,由于某些原因,StackOverflow片段作为外部资源包含时无法运行它(来自CDN https://cdn.jsdelivr.net/npm/relaxed-json@1.0.1/relaxed-json.js ),所以我在这里创建了一个Stackblitz演示:

https://www.npmjs.com/package/really-relaxed-json can help you out here. Unfortunately for some reason StackOverflow snippets cannot run it when included as an external resource (from CDN https://cdn.jsdelivr.net/npm/relaxed-json@1.0.1/relaxed-json.js), so I created a Stackblitz demo here:


https://js-ei2iz2.stackblitz .io < - 检查控制台

https://js-ei2iz2.stackblitz.io <-- check the console

以下是可编辑的示例:


https://stackblitz.com/edit/js -ei2iz2



let response = `{  
       "canonical_url":"http://magento2-demo.nexcess.net/"
    }{  
       "shop_properties":{  
          "is_hypernode":false,
          "hypernode_without_magento":false,
          "loadtime_milliseconds":535
       }
    }{  
       "admin_url":null
    }{  
       "security.supee5344":{  
          "magento2":false,
          "resultString":"backend url required",
          "riskRating":"low",
          "result":"unkn",
          "magento1":true,
          "cloudflareCacheHit":null
       }
    }{  
       "security.supee5994":{  
          "magento2":false,
          "resultString":"installed",
          "riskRating":"low",
          "result":"ok",
          "magento1":true,
          "cloudflareCacheHit":null
       }
    }{  
       "security.cart2quoterce":{  
          "magento2":false,
          "resultString":"safe",
          "riskRating":"low",
          "result":"ok",
          "magento1":true,
          "cloudflareCacheHit":null
       }
    }{  
       "security.ransomware":{  
          "magento2":true,
          "resultString":"safe",
          "riskRating":"low",
          "result":"ok",
          "magento1":true,
          "cloudflareCacheHit":null
       }
    }{  
       "security.ajaxcartrce":{  
          "magento2":false,
          "resultString":"safe",
          "riskRating":"low",
          "result":"ok",
          "magento1":true,
          "cloudflareCacheHit":null
       }
    }{  
       "security.openversioncontrol":{  
          "magento2":true,
          "resultString":"safe",
          "riskRating":"low",
          "result":"ok",
          "magento1":true,
          "cloudflareCacheHit":null
       }
    }{  
       "security.opendev":{  
          "magento2":true,
          "resultString":"safe",
          "riskRating":"low",
          "result":"ok",
          "magento1":true,
          "cloudflareCacheHit":null
       }
    }{  
       "security.guruincinfection":{  
          "magento2":true,
          "resultString":"safe",
          "riskRating":"low",
          "result":"ok",
          "magento1":true,
          "cloudflareCacheHit":null
       }
    }{  
       "security.creditcardhijack":{  
          "magento2":true,
          "resultString":"safe",
          "riskRating":"low",
          "result":"ok",
          "magento1":true,
          "cloudflareCacheHit":null
       }
    }{  
       "security.visbot":{  
          "magento2":false,
          "resultString":"safe",
          "riskRating":"low",
          "result":"ok",
          "magento1":true,
          "cloudflareCacheHit":null
       }
    }{  
       "security.cryptojacking":{  
          "magento2":true,
          "resultString":"safe",
          "riskRating":"low",
          "result":"ok",
          "magento1":true,
          "cloudflareCacheHit":null
       }
    }{  
       "security.outdatedserverversion":{  
          "magento2":true,
          "resultString":"unknown",
          "riskRating":"low",
          "result":"unkn",
          "magento1":true,
          "cloudflareCacheHit":null
       }
    }{  
       "security.cacheleak":{  
          "magento2":true,
          "resultString":"safe",
          "riskRating":"low",
          "result":"ok",
          "magento1":true,
          "cloudflareCacheHit":null
       }
    }{  
       "security.amastyopendownload":{  
          "magento2":false,
          "resultString":"safe",
          "riskRating":"low",
          "result":"ok",
          "magento1":true,
          "cloudflareCacheHit":null
       }
    }{  
       "security.sslcheck":{  
          "magento2":true,
          "resultString":"misconfigured",
          "riskRating":"medium",
          "result":"fail",
          "magento1":true,
          "cloudflareCacheHit":null
       }
    }{  
       "security.webforms":{  
          "magento2":false,
          "resultString":"safe",
          "riskRating":"low",
          "result":"ok",
          "magento1":true,
          "cloudflareCacheHit":null
       }
    }{  
       "security.openmagmi":{  
          "magento2":false,
          "resultString":"safe",
          "riskRating":"low",
          "result":"ok",
          "magento1":true,
          "cloudflareCacheHit":null
       }
    }{  
       "security.magversion":{  
          "magento2":true,
          "resultString":"CE 2.1.0 - 2.1.2",
          "riskRating":"high",
          "result":"fail",
          "magento1":true,
          "cloudflareCacheHit":null
       }
    }{  
       "security.supee6788":{  
          "magento2":false,
          "resultString":"installed",
          "riskRating":"low",
          "result":"ok",
          "magento1":true,
          "cloudflareCacheHit":null
       }
    }{  
       "security.supee8788":{  
          "magento2":false,
          "resultString":"unknown",
          "riskRating":"low",
          "result":"unkn",
          "magento1":true,
          "cloudflareCacheHit":null
       }
    }{  
       "security.supee9652":{  
          "magento2":false,
          "resultString":"safe",
          "riskRating":"low",
          "result":"ok",
          "magento1":true,
          "cloudflareCacheHit":null
       }
    }{  
       "security.supee10570":{  
          "magento2":false,
          "resultString":"patched",
          "riskRating":"low",
          "result":"ok",
          "magento1":true,
          "cloudflareCacheHit":null
       }
    }{  
       "security.supee10752":{  
          "magento2":false,
          "resultString":"patched",
          "riskRating":"low",
          "result":"ok",
          "magento1":true,
          "cloudflareCacheHit":null
       }
    }{  
       "security.supee6285":{  
          "magento2":false,
          "resultString":"unknown",
          "riskRating":"low",
          "result":"unkn",
          "magento1":true,
          "cloudflareCacheHit":null
       }
    }{  
       "security.supee6482":{  
          "magento2":false,
          "resultString":"unknown",
          "riskRating":"low",
          "result":"unkn",
          "magento1":true,
          "cloudflareCacheHit":null
       }
    }{  
       "security.exposedapi":{  
          "magento2":true,
          "resultString":"safe",
          "riskRating":"low",
          "result":"ok",
          "magento1":false,
          "cloudflareCacheHit":null
       }
    }{  
       "security.bruteforce":{  
          "magento2":false,
          "resultString":"protected",
          "riskRating":"low",
          "result":"ok",
          "magento1":true,
          "cloudflareCacheHit":null
       }
    }{  
       "security.supee10266":{  
          "magento2":false,
          "resultString":"backend url required",
          "riskRating":"low",
          "result":"unkn",
          "magento1":true,
          "cloudflareCacheHit":null
       }
    }{  
       "security.supee9767":{  
          "magento2":false,
          "resultString":"unknown",
          "riskRating":"low",
          "result":"unkn",
          "magento1":true,
          "cloudflareCacheHit":null
       }
    }{  
       "security.supee10415":{  
          "magento2":false,
          "resultString":"unknown",
          "riskRating":"low",
          "result":"unkn",
          "magento1":true,
          "cloudflareCacheHit":null
       }
    }{  
       "security.supee7405":{  
          "magento2":false,
          "resultString":"unknown",
          "riskRating":"low",
          "result":"unkn",
          "magento1":true,
          "cloudflareCacheHit":nulla
       }
    }`

    response = "["+response+"]"

    console.log(RJSON.parse(response))

这篇关于如何解析对象不以逗号分隔的JSON字符串?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆