【发布时间】:2021-07-28 01:58:37
【问题描述】:
我正在使用外部 API,API 的部分参数是 IP 地址。我查了一下怎么做,我在这个answer 中使用了ipify 版本,因为它没有限制。这是脚本:
$.getJSON('https://api.ipify.org?format=jsonp&callback=?', function(data) {
console.log(data);
console.log(data.ip.toString());
retrieved_entity_ip = data.ip.toString();
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
它运行良好,直到一些客户端显示错误,根据日志,这是因为他们的 IP 地址丢失。我将范围缩小到他们的浏览器扩展程序uBlock Origin,它阻止了脚本运行。
有没有更可靠的方法来做到这一点而无需升级到付费层?
【问题讨论】:
-
您的 API 将 IP 视为凭据?
-
@GuerricP。是的。它在他们的documentation 中,所以我相信我也可以分享它。
-
有趣。我不明白目的是什么,以及他们如何验证这个地址。
-
在这种情况下,如果客户端无法连接到您的外部服务,我建议您抛出错误,并显示一条消息告诉他们禁用其网络阻止扩展。
-
您可以托管自己的 ipify 服务器。 ipify 被列入黑名单github.com/rdegges/ipify-api/issues/18。你可能会在雷达下飞行
标签: javascript html google-chrome-extension ip-address browser-extension