Node.js Axios get请求挂起,无错误,未触发捕获

Node.js Axios get请求挂起,无错误,未触发捕获,node.js,express,axios,spotify,Node.js,Express,Axios,Spotify,当我在节点上使用axios发出GET请求时,它只是挂起,捕获不会抛出,也不会捕获错误 我不确定如何调试,没有抛出错误。我正在启动spotify API,但如果这方面出现问题,我肯定会得到一些响应 有一段时间我遇到了一个EconReset错误,我的互联网不太稳定。但这个错误不再被抛出 我尝试过使用fetch,同样的问题。我回到了经典的承诺语法。从现在起,它一直运转良好 调用并记录此方法 "node": "10.0.0", "axios": "^0.19.0", “req method calle

当我在节点上使用axios发出GET请求时,它只是挂起,捕获不会抛出,也不会捕获错误

我不确定如何调试,没有抛出错误。我正在启动spotify API,但如果这方面出现问题,我肯定会得到一些响应

有一段时间我遇到了一个EconReset错误,我的互联网不太稳定。但这个错误不再被抛出

我尝试过使用fetch,同样的问题。我回到了经典的承诺语法。从现在起,它一直运转良好

调用并记录此方法

"node": "10.0.0",
"axios": "^0.19.0",

“req method called”被记录下来,cred就在那里,没有其他内容,只是挂起。

无需将调用存储在函数中。把这个电话当作承诺吧

 function tryFetchForPlaylists(usersCred) {
        console.log('req method called ', usersCred)
        let playlistData;

        return axios.get('https://api.spotify.com/v1/users/' + usersCred.userId + '/playlists',
            {
                headers: {
                    'Authorization': 'Bearer ' + usersCred.accessToken,
                    'Content-Type': 'application/json'
                }
            })
            .then((data) => {
             // return your data here...
            })
            .catch((err) => {})


    }

axios.get()。您需要对该承诺使用
wait
.then()
来获取值。而且,
try/catch
只有在使用
wait
时才会出错。否则,您应该使用
.catch()
查看错误。@jfriend00如果我使用
.then()
.catch()
-我在200中获得JSON,这一切都很好。但是,将其返回到使用
wait
的函数不起作用let status=等待tryFetchForPlaylists(userCreds);console.log('waiting for status',status)`状态是
undefined
Well
tryFetchForPlaylists()
只是实现错误,所以您不能
等待它。您必须修复它的实现。看起来你需要读一些关于你如何从承诺中得到错误的书
try/catch
仅适用于异步函数中的情况,并且承诺您正在使用
wait
on。如果您没有执行
await fetch()
,则必须使用
fetch().then().catch()
来捕获错误。是的,谢谢,我以前在
中使用了
async
await
块,请尝试
catch
。现在似乎可以与您的配置配合使用。我确实得到了JSON,但由于某种原因无法返回调用方函数。我在调用者函数中使用了
wait
,但它仍然没有定义。@godhar我做了一些编辑,应该允许您将数据返回调用者。确保返回
axios
promise,然后返回数据。如果这有助于您解决问题,您介意将其标记为解决方案吗?谢谢我忘了
返回
axios函数-该死!我会投票给你@caden311
 function tryFetchForPlaylists(usersCred) {
        console.log('req method called ', usersCred)
        let playlistData;

        return axios.get('https://api.spotify.com/v1/users/' + usersCred.userId + '/playlists',
            {
                headers: {
                    'Authorization': 'Bearer ' + usersCred.accessToken,
                    'Content-Type': 'application/json'
                }
            })
            .then((data) => {
             // return your data here...
            })
            .catch((err) => {})


    }