我正在使用带有返回 JSON 对象的端点的 API。使用 jQuery 调用 API 时,结果是包含该对象的数组。为什么?
从浏览器(https://example.com/api/elements/1):
{
"id": 1,
"name": "foobar"
}
JS代码:
$.get('https://example.com/api/elements/1', data => {
console.log(data)
})
console.log
结果是这样的:
[
{
"id": 1,
"name": "foobar"
}
]
为什么直接访问和jQuery有区别?更重要的是,有没有办法检索 JSON 而不是包含单个 JSON 的数组?
如果你的 API 没有返回数组,jQuery 不会将其解析为一个数组。
我建议检查来自不同来源的 API 响应(也许浏览器正在对 JSON 进行一些格式化?)。
此处使用 jQuery get() 函数向虚拟 API 发出请求的示例:
$.get('https://jsonplaceholder.typicode.com/todos/1', data => {
console.log(data)
});