簡體   English   中英

JavaScript 獲取客戶端 IP 地址繞過瀏覽器擴展

[英]JavaScript to get Client IP Address bypassing Browser Extensions

我正在使用外部 API 和 API 的部分參數是 IP 地址。 我查了怎么做,我在這個答案中使用了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 ,它阻止了腳本運行。

有沒有更可靠的方法可以做到這一點而無需升級到付費層?

您可以使用未被廣告攔截器列入黑名單的公共服務,例如https://www.myexternalip.com/json但最終它也可以被列入黑名單,它不受您的控制。

降低使用可能被列入黑名單的服務的風險的最可靠方法是按照描述中的建議構建您自己的服務器,或者在請求失敗的情況下保留更新的替代服務列表。 可能你不花一些錢就不會擺脫你的“問題”。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM