Axios POST请求调用Flask API无报错但返回数据为空,求解决
问题排查与解决步骤
先确认返回数据的实际结构
把代码里的console.log(response.data.data)改成console.log(response.data),查看浏览器控制台输出的完整返回内容。对比Postman里的返回结构,很可能后端返回的不是嵌套的data字段(比如直接返回{token: "xxx"}而非{data: {token: "xxx"}}),导致你访问response.data.data时取不到值。检查Axios的全局配置
确认是否有全局的Axios配置(比如axios.defaults.transformResponse)对返回数据做了修改。如果有,可在当前请求中临时覆盖该配置:const config = { headers: { "Content-Type": "application/json" }, transformResponse: undefined // 禁用全局的响应转换 }查看浏览器网络请求的实际返回
打开浏览器开发者工具的「Network」面板,找到该POST请求,查看「Response」或「Preview」标签下的内容:- 如果这里的返回和Postman一致,说明是前端解析路径错误;
- 如果不一致,检查后端是否针对浏览器请求返回了不同内容(比如因请求头差异导致)。
核对请求头与数据格式
在「Network」面板中查看请求的「Request Payload」,确认发送的JSON数据和Postman一致。同时可在Axios配置中显式添加Accept头,确保后端返回JSON格式:const config = { headers: { "Content-Type": "application/json", "Accept": "application/json" } }
内容的提问来源于stack exchange,提问作者ussrback
相关产品推荐
相关产品推荐

