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

React调用.NET Core接口遇302重定向,axios.get何时触发响应?

问题解答

核心结论

最初的React请求的响应触发时机分两种情况,取决于你是否配置了禁止浏览器自动跟随重定向:


1. 默认自动跟随重定向(绝大多数场景的默认行为)

此时你的React代码不会感知到302响应,直到.NET Core最终返回JSON数据时,最初的请求的await/then才会被触发,拿到的是最终的JSON响应。

这是因为浏览器的fetch/XMLHttpRequest(包括axios等封装库)默认会自动处理302重定向:一旦收到.NET Core返回的302,浏览器会立刻向Location头指向的URL发起新请求,直到拿到最终的非重定向响应(也就是你说的回调后返回的JSON),才会把这个最终结果返回给你的React代码。

2. 禁用自动跟随重定向

如果你在请求中显式配置了禁止自动重定向(比如fetch里设置redirect: 'manual',或者axios设置maxRedirects: 0),那么最初的React请求会立刻触发响应,拿到的就是.NET Core返回的302响应,响应头里会包含重定向的目标地址,后续的跳转逻辑需要你自己在React代码里处理。


针对你描述的场景:如果是默认配置,你的React代码会等到.NET Core返回最终JSON时才会收到响应;但从HTTP协议层面,最初的请求确实在收到302时就已经完成了,只是浏览器帮你自动完成了后续的重定向流程。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.25 06:53:17