我有一个返回 JSON 的 url,但返回字符串的开头是
])}while(1);</x>{"success":true,"payload":{"value":
我想在])}while(1);</x>
上拆分并查看该split
数组的 [1] 值。
现在我正在做
fetch(jsonURL)
.then(res => {
console.log(res);
});
通常我会在console.log
分手,但我收到以下错误:
天才程序员的神话-9381a884591e:1 未捕获(承诺(语法错误:意外标记 ] 在位置 0 的 JSON 中
您需要调用 response.text()
来获取响应的原始文本,以便您可以在开始时删除无关的内容。然后你必须自己解析JSON,你不能使用res.json()
。
fetch(jsonURL)
.then(res => res.text())
.then(text => {
text = text.replace('])}while(1);</x>', '');
let obj = JSON.parse(text);
console.log(obj);
|);
这假设无关紧要的东西只是在开始。如果 JSON 之后还有内容,您还需要将其删除。