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

Vue与Django跨域异常:localhost正常,127.0.0.1请求触发CORS错误

解决Vue与Django跨域中127.0.0.1访问报错的问题

问题原因

CORS机制里,http://localhost:5173和http://127.0.0.1:5173被视为两个完全不同的源,即便它们指向同一台本地机器。你的Django配置仅将localhost加入白名单,所以用127.0.0.1访问时会触发跨域拦截。

解决步骤

  1. 更新Django的CORS白名单配置
    在settings.py的CORS_ORIGIN_WHITELIST(若使用新版corsheaders则为CORS_ALLOWED_ORIGINS)中同时添加两个地址:

    CORS_ORIGIN_WHITELIST = [
        "http://localhost:5173",
        "http://127.0.0.1:5173",
    ]
    
  2. 重启服务验证
    重启Django后端服务,再用http://127.0.0.1:5173访问Vue项目发起请求,跨域错误即可消除。

额外提示

若需支持更多本地测试地址,直接在白名单中追加对应完整URL即可。开发环境下若想简化配置,可临时设置CORS_ORIGIN_ALLOW_ALL = True,但生产环境绝对禁止此操作。

内容的提问来源于stack exchange,提问作者刘子琦

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.04 14:23:11