簡體   English   中英

在 Flask 中使用開發服務器時獲取客戶端 IP 地址

[英]Getting Client IP address while using development server in Flask

我在做什么

我有一個 Flask 網站,我正在使用 ngrok 隧道讓客戶可以訪問它。

我想要的是

我正在嘗試獲取客戶端的 IP 地址。

到目前為止我所做的

到目前為止,我已經嘗試過這些,

request.environ.get('HTTP_X_REAL_IP', request.remote_addr)

request.environ['REMOTE_ADDR']

但他們都返回 127.0.0.1。 我也檢查了這個問題但是它沒有幫助我,因為那里寫的答案是為了在生產服務器環境中獲取客戶端 IP 而我正在尋找任何可以在開發模式下獲取客戶端 IP 地址的方法使用 ngrok 建立隧道的服務器。

我腦子里有兩種可能的方法,

  • 如果我可以從 Ngrok 獲取連接請求者的 IP 地址。 我不知道有什么辦法可以做到,但這可以解決我的問題。
  • 或者我在我的 javascript 代碼中添加一些東西,這樣每當索引頁面加載時,它就會向服務器發送一個 ajax 請求,告訴它客戶端的 IP 地址。 (如有錯誤請指正)

在 Flask 的情況下,您無法直接在服務器端獲取客戶端 IP 地址,但如果您的 Web 應用程序獲取客戶端 IP,然后使用 AJAX 請求將其發送回服務器以便您可以記錄它,則您無法獲取 IP 地址。 這是我認為你可以在燒瓶中做到的唯一可能方法。

暫無
暫無

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

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