获取 api returns 数组数组而不是对象数组
Fetching api returns Array of Arrays instead Array of Objects
我是一名前端开发人员,我正在从事一个需要 CRUD 操作的项目,我不得不从 API 中获取数据。我在 Postman 和 Arc 中测试了 API,数据正常输出(对象数组),但是当我使用 Axios 或 Fetch 在应用程序中获取时,我得到的数据是数组数组,这从未发生过,我可以寻求帮助。
axios
.get(
"***$format=json",
{ withCredentials: "true" }
)
.then((data) => {
console.log(data, "data");
})
.catch((err) => console.log(err, "err"));
Console log
enter image description here
我看过控制台日志,它似乎只是一个对象数组,但数组的长度是 1823,所以 chrome 改变了显示方式,它只是将 100 个数组组成一组,所以如果您只是尝试使用 .map 方法遍历响应,那么您会发现实际上它是一个对象数组
axios
。得到(
"***$format=json",
{ withCredentials: “真” }
).then((数据) => {
console.log(data.d.results);
}).catch((err) => console.log(err, "err"));
看来如果响应可以从后端设置,或者后端确实以对象数组的形式发送响应,则可以像这样转换为数组的数组:
const output = input.map((obj) => Object.keys(obj).map((key) => obj[key]));
我是一名前端开发人员,我正在从事一个需要 CRUD 操作的项目,我不得不从 API 中获取数据。我在 Postman 和 Arc 中测试了 API,数据正常输出(对象数组),但是当我使用 Axios 或 Fetch 在应用程序中获取时,我得到的数据是数组数组,这从未发生过,我可以寻求帮助。
axios
.get(
"***$format=json",
{ withCredentials: "true" }
)
.then((data) => {
console.log(data, "data");
})
.catch((err) => console.log(err, "err"));
Console log
enter image description here
我看过控制台日志,它似乎只是一个对象数组,但数组的长度是 1823,所以 chrome 改变了显示方式,它只是将 100 个数组组成一组,所以如果您只是尝试使用 .map 方法遍历响应,那么您会发现实际上它是一个对象数组
axios 。得到( "***$format=json", { withCredentials: “真” } ).then((数据) => { console.log(data.d.results); }).catch((err) => console.log(err, "err"));
看来如果响应可以从后端设置,或者后端确实以对象数组的形式发送响应,则可以像这样转换为数组的数组:
const output = input.map((obj) => Object.keys(obj).map((key) => obj[key]));