利用ipify取得public IP
ipify是一個可以取得public的的API
這是上次在看SweetAlert2範例時不小心看到的
ipify還提供相當多的程式語言範例,其中還可以指定以json的格式回傳資料
只要照著直接調用就可以了
以 PHP 來說以前我的寫法和網路上網友提供的方式是這樣子的
<?php
if (!empty($_SERVER["HTTP_CLIENT_IP"])){
$ip = $_SERVER["HTTP_CLIENT_IP"];
}elseif(!empty($_SERVER["HTTP_X_FORWARDED_FOR"])){
$ip = $_SERVER["HTTP_X_FORWARDED_FOR"];
}else{
$ip = $_SERVER["REMOTE_ADDR"];
}
echo $ip;
?>
是不是又臭又長吶!!
但現在直接用ipify的話直接用file_get_contents呼叫API就可以了
<?php
$ip = file_get_contents('https://api.ipify.org');
echo "My public IP address is: " . $ip;
?>
天丫!!是不是輕鬆又愉快丫!!
而或是今天我想在shell script裡取得public IP在以往我肯定得再研究一番
但現在呢?
#!/bin/bash
ip=$(curl -s https://api.ipify.org)
echo "My public IP address is: $ip"
總之ipify還供相當多的語言(Python、Ruby、Java、Perl、Go、JavaScript、jQuery......等)
初步看來官方還提供各種語言的Libraries,可以讓您直接在Project引入呼叫
超級無敵的吶
另外官網的網址是掛載在ORG底下
看來應該也會是一個蠻穩定的Project
只是目前還不支援IPv6
可惜可惜
大家不妨也體驗看看吧!!
近期迴響