gpt4 book ai didi

javascript - $.getJSON 返回未定义并产生 XML 解析错误

转载 作者:行者123 更新时间:2023-12-03 01:34:50 24 4
gpt4 key购买 nike

在开始之前,我想指出这是一个学校项目,我查看了多个搜索结果,经过 2 小时的这样做,我坦率地放弃了......我的问题是以下内容代码:

var books;
var x = $.getJSON("book_data.json", function(response){
books = response;
});
console.log(x.responseJSON, books);

记录以下内容:

undefined undefined

有错误:

XML Parsing Error: syntax error
Location: file:///C:/Users/.../book_data.json
Line Number 1, Column 1:

它拉取的json可以找到here .

我添加了

console.log(response);

在 getJSON block 中,以确保它可以解析它(它可以),并仅记录 x 以确保我确实得到正确的响应(我确实这样做了)。我发现了其他堆栈溢出,并且尝试了他们的建议,但我仍然无法解决这个问题。有没有更好的方法来获取我想要的信息,或者我应该放弃并将 json 转换为单行并将其放入我的 html 文件中?

最佳答案

$.getJSON 是一个异步方法,只需在回调函数中读取 json 内容即可。

此外,由于您正在从本地 C: 驱动器读取 json 文件,因此隐含了“text/xml”的 mimeType,因此您的浏览器将尝试将其作为 XML 解析为底层 XHR 对象的 .responseXML。这将失败,导致 XML Parsing Error。,您需要在调用 getJSON 之前指定 mimeType,

$.ajaxSetup({
scriptCharset: "utf-8",
contentType: "application/json; charset=utf-8"
});

var books;
var x = $.getJSON("book_data.json", function(response){
books = response;
console.log(JSON.stringify(books));
});

还有一件事,确保 book_data.json 具有有效的 json 数据

关于javascript - $.getJSON 返回未定义并产生 XML 解析错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51119269/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com