Javascript 如何修复截断的字符串json以便能够再次解析它

Javascript 如何修复截断的字符串json以便能够再次解析它,javascript,json,Javascript,Json,我有一个在google日志中被截断的json字符串(由于某些原因无法修复) JSON字符串类似于255000个字符,为了简单起见,原始JSON类似于 { "a": "1", "b" : [{ "b1": "<span>text b1</span>" }, { "b2": "<span>

我有一个在google日志中被截断的json字符串(由于某些原因无法修复)

JSON字符串类似于255000个字符,为了简单起见,原始JSON类似于

 { "a": "1", 
   "b" : [{
      "b1": "<span>text b1</span>"
   },
   {
      "b2": "<span>text b2</span>"
   }],
   "c": "3"
 }

最好的方法是什么


我尝试了
脏json
库来修复,但实际上这对这种情况没有帮助

恐怕你得自己动手了。但是你的方法听起来是一个很好的开始。

npm包按预期工作

import untruncateJson from "untruncate-json";

const string = ` { "a": "1", 
   "b" : [{
      "b1": "<spa... 34 characters truncated.`;

// remove non-json ending
const truncatedJson = string.replace(/\.\.\. \d+ characters truncated\.$/,'');

// run library
const untruncatedJson = untruncateJson(truncatedJson);

console.log(untruncatedJson);
从“untruncate json”导入untruncateJson;
常量字符串=`{“a”:“1”,
“b”:[{

“b1”:“我能想到的一件事是解析一个JSON.parse()错误,并根据错误文本Your's welcome;)进行修复
 { "a": "1", 
   "b" : [{
      "b1": "<spa"
    }]
 }
 { "a": "1", 
   "b" : [{
      "b1": ... 34 characters truncated.
 { "a": "1", 
   "b" : [{
      "b1 ... 34 characters truncated.
import untruncateJson from "untruncate-json";

const string = ` { "a": "1", 
   "b" : [{
      "b1": "<spa... 34 characters truncated.`;

// remove non-json ending
const truncatedJson = string.replace(/\.\.\. \d+ characters truncated\.$/,'');

// run library
const untruncatedJson = untruncateJson(truncatedJson);

console.log(untruncatedJson);
 { "a": "1", 
   "b" : [{
      "b1": "<spa"}]}