You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaScript async函数执行不全:await axios请求后后续代码未运行

可能原因及排查步骤

  • 1、请求抛出错误进入catch分支
    axios默认仅当HTTP响应状态码为2xx时才会判定请求成功,进入await后的后续逻辑;如果返回4xx/5xx状态码、跨域、网络异常,会直接抛出异常进入catch块。
    你可以先修改catch块的日志代码,输出完整错误信息排查:
catch (error) {
  // 打印响应错误信息、状态码,无响应的话打印错误原因
  console.log('错误详情:', error.response ? `${error.response.status} ${JSON.stringify(error.response.data)}` : error.message)
}

常见这类错误的诱因:

  • 路径参数session?.id为undefined,导致请求路径错误触发404

  • 接口路径拼写错误,和后端注册的路由不匹配

  • 后端参数校验不通过返回400错误

  • 2、后端接口未返回响应
    打开浏览器控制台的「网络」面板,查看/addwatchlist请求的状态,如果始终处于pending(转圈)状态,说明后端接口逻辑处理完后没有返回响应,比如Node.js后端接口漏写了res.send()/res.json()这类返回语句,请求会一直挂起,await会持续等待不会触发后续代码。
    参考函数对应的addcointowatchlist接口可以正常执行,大概率是addwatchlist后端接口单独存在未返回响应的问题,优先检查该接口的后端逻辑。

  • 3、传参格式异常
    第一个接口传递的是嵌套结构coins: {coin: {coinID: coinID}},如果后端没有配置对应的嵌套参数解析规则(比如express的body-parser未开extended: true),会导致后端拿不到参数,逻辑卡住或抛出错误未返回。可以先在发请求前打印watchlistName、coinID确认参数是有效值,再对比后端要求的传参格式是否匹配。

内容的提问来源于stack exchange,提问作者Eric Pezzulo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 11:15:06