從零開始製作一個ip查詢網站-第二章 獲取使用者的IP
取得使用者 IP,ipify API,React useEffect fetch
Chris-
11 月 29,2025

開發環境準備好後,接下來我遇到的第一個實際開發問題,就是「我要怎麼拿到使用者的 IP?」 聽起來很簡單,但實際操作才發現瀏覽器並不會直接把使用者的真實 IP 丟給你。 所以我需要透過第三方 API 來協助抓取。

為什麼不能直接從瀏覽器取得 IP?

因為現代瀏覽器基於隱私政策,不會把使用者的公開 IP 直接暴露給前端程式。除非是像 WebRTC 那種 特殊情況,不然你基本上看不到使用者的 IP。這也代表我一定得使用外部 IP API。

選一個好用的 IP API

IP API 有很多種,我試了幾個以後,最後選擇使用 ipify API。 它的回傳格式乾淨、速度快,而且免費方案就能滿足一般查詢需求。 它的查詢方式也非常簡單,只要 GET 一次就能拿到一個 JSON。

https://api.ipify.org?format=json

這會回傳像這樣的內容:

{
    "ip": "123.123.123.123"
}

在 React 裡取得 IP

接著,我在 React 裡寫了一段最簡單的 fetch 請求,用來抓取 API 並把 IP 顯示在頁面上。 這邊先用 React 的 useEffect 來在頁面載入時請求 API。

import {useState,useEffect} from "react"

function App(){
    const[ip,setIp]=useState("")

    useEffect(function(){
        fetch("https://api.ipify.org?format=json")
        .then(function(res){
            return res.json()
        })
        .then(function(data){
            setIp(data.ip)
        })
    },[])

    return(
        <div>
            你的IP是:{ip}
        </div>
    )
}

export default App

這樣頁面一打開,就能立即看到使用者目前的 IP。 API 回傳得很快,所以畫面幾乎是瞬間更新。

小結:IP 到手,下一步做地理定位

有了 IP,只能算是踏進門口。下一章要處理的,就是更進一步的地理定位——取得城市、國家、緯經度等資訊。 這些資訊才是真正能讓我們把地圖顯示出來的關鍵。 也就是說,第三章開始,我就會把 IP 轉換成實際位置資訊。

Tags:
IP抓取React教學前端開發


相關文章
創業起點|開公司不是寫表單,而是做選擇
ricky - 2025-05-19T14:08:01Z
開公司不只是填寫申請書!這篇文章分享了創業者在設立公司過程中,從公司命名、類型選擇(行號 vs. 有限公司 vs. 股份有限公司)、到稅務考量的實戰經驗與建議。如果你正準備創業,這篇避坑指南絕對值得一...
從零開始製作一個ip查詢網站-第四章 在頁面中加入Google廣告
chris - 2025-12-28T04:48:22Z
本篇教學將示範如何在 React 專案中加入 Google AdSense 廣告,從取得廣告程式碼、封裝成可重用的元件,到在 IP 查詢網站中正確顯示廣告,兼顧網站體驗與變現需求。
Hilltop 廣告實務指南:創業者網站快速變現策略
ricky - 2025-12-28T10:21:48Z
本篇將介紹 Hilltop 廣告如何協助網站或個人專案快速變現,強調低門檻出金、操作簡單且穩定,並示範在 React/Next.js 中整合廣告元件,以及提供推薦連結增加收益。
訂閱電子報
隨時掌握最新的創業故事與設計開發過程
內容包含來自麒航團隊的日常分享、專業知識與工具推薦,助你了解更多創業背後的思維與技術。
麒航私房推薦
Clelereve Blog LogoClelereve Blog LogoClelereve Blog Logo
廣告區
Clelereve Blog Logo
聯絡我們
任何合作或問題請洽:
clelereve@gmail.com
Follow us
Copyright © 2025 blog.clelereve.com - All Rights Reserved
Frontend Version: -- | Backend Version: --
創業實驗筆記 - Clelereve Blog | 從零開始製作一個ip查詢網站-第二章 獲取使用者的IP | Clelereve Blog