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

Django redirect重定向快捷方法失效,浏览器无跳转该如何解决?

排查解决步骤
  • 确认请求触发方式
    如果maca_create是通过AJAX、Fetch、Axios等异步请求调用的,浏览器默认不会自动处理302重定向,需要前端在异步回调中手动获取响应头的Location字段,执行window.location.href = 跳转地址完成跳转。
  • 验证响应状态码
    打开浏览器F12开发者工具的「网络」面板,查看maca_create请求的响应状态:
    • 如果不是301/302:说明代码逻辑中存在装饰器、中间件或者后续代码修改了响应对象,把重定向响应改成了普通200响应,需要排查返回redirect之后是否有其他逻辑修改了返回值,或者装饰器拦截了返回结果。
    • 如果是301/302:检查响应头的Location字段是否是预期的跳转地址,确认该地址直接访问可以正常打开,没有404、500、权限校验拦截等问题。
  • 校验路由反向解析配置
    确认urls.py中maca应用的命名空间配置正确,detail路由的名称没有拼写错误,带参路由的参数规则和传入的pk匹配,反向解析生成的地址没有异常。
  • 排查跨域拦截场景
    如果是前后端分离部署,跨域场景下302响应的Location头默认会被浏览器跨域策略隐藏,需要在后端CORS配置中添加CORS_EXPOSE_HEADERS = ["Location"],允许前端读取该响应头后手动跳转。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 22:15:05