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

本地调用ip-api接口正常,部署后Axios出现网络错误求助

问题:Axios调用ip-api接口本地正常,上线后报网络错误

我需要通过Axios调用http://ip-api.com/json接口获取用户地理位置,用来在网站上做内容的条件渲染。这个功能在本地用npm start运行完全正常,但部署上线后就出现Axios网络错误,想知道问题出在哪。

相关代码:

const getGeoInfo = () => {
    axios
      .get("http://ip-api.com/json")
      .then((res) => {
        setRegion(res.data.regionName);
        if (res.data.country === "Canada" || res.data.country === "Pakistan") {
          setAcceptedCountries(true);
        } else setAcceptedCountries(false);
      })
      .catch((err) => {
        console.log(err);
      });
  };
可能的原因
  • 混合内容拦截:上线后的网站大多用HTTPS协议,而你调用的接口是HTTP明文的,浏览器出于安全会直接拦截这种跨协议请求。本地环境用HTTP运行,所以不会触发这个限制。
  • CORS规则冲突:虽然ip-api官方支持跨域请求,但你的部署平台(比如Netlify、Vercel)可能有额外的CORS配置,或者服务器防火墙拦截了跨域请求,导致接口调用失败。
  • 请求频率超限:ip-api的免费版有请求次数限制(每分钟最多45次,每天最多1000次),如果网站上线后访问量上来,触发了限流机制,就会返回错误。
  • 部署环境网络限制:有些服务器或托管平台会限制出站请求,可能把ip-api的域名加入了黑名单,导致无法发起请求。
  • DNS解析失败:上线后的服务器或CDN可能无法正确解析ip-api.com的域名,导致请求无法送达接口服务器。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 04:48:15