gpt4 book ai didi

javascript - Response 的数据部分是一个长脚本而不是所需的 json 对象

转载 作者:行者123 更新时间:2023-11-30 19:31:42 25 4
gpt4 key购买 nike

我正在使用 laravel 和 vuejs 构建一个网络应用程序。我发出了 axios get 请求来获取用户列表。我得到一个 Promise 对象,从我读过的内容来看。获取 promise 对象的原因是因为它是一个异步请求。

我试过 .then() 来获取响应的数据部分。但是我得到的是一个巨大的脚本而不是所需的数据。

axios......then(function(response){
console.log(response.data);
})

最初我做的是

 var res = axios.get('/allUsers');
console.log(res)

那时候我开始了解 promise 对象并阅读相关内容。当我在开发工具中检查网络时,状态代码为 200,我可以看到用户列表。所以我想我的请求已成功完成。

获取用户列表应该做什么。我将使用该列表来更新我的 UI。

最佳答案

根据您要返回的数据,有几种方法可以处理此问题。您可能需要在收到响应后转换数据。

axios.get('some_url')
.then(res => res.json())
.then(data => {
// do something with the data
}).catch(err) {
conosole.error(err);
}

如果您看到数据在响应中正确通过,并且您在不这样做的情况下获得了所需的内容,那么就这样做

axios.get('some url').then(res => {
// do something in here with the data here
})

如果这正是您要查找的内容,请确保您返回的是 json。检查您的回复以查看其是 html 还是 json,因为它们的处理方式可能有所不同

作为“编辑”,您还可以使用 async await 处理此问题,这样您就不会陷入回调 hell

async function fetchData() {
try {
const res = await axios.get('some url');
// next step might not be necessary
const data = await res.json();
// do something with the data
console.log(data); // if converting it was necessary
console.log(res); // if not converting
} catch (err) {
console.error(err);
}
}

关于javascript - Response 的数据部分是一个长脚本而不是所需的 json 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56361906/

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