我有以下設置:該請求是使用其 IP 地址之一向服務器發出的 - 比如說192.168.0.1(在 eth0 上)或192.168.0.2(在 eth1 上)。服務器正在偵聽本地機器上的所有地址(例如http.ListenAndServe(":8080", nil))。如何在服務器代碼中從請求中確定它被發送到哪個網絡接口(或 IP 地址)?req.Host包含服務器的主機名。此外,我在請求標頭中看不到任何內容。
1 回答

Qyouu
TA貢獻1786條經驗 獲得超11個贊
好的,我為 http 庫源代碼找到了這個 - 傳入地址存儲在 http.LocalAddrContextKey 鍵下的請求上下文中。所以要提取傳入的IP地址,你需要做
r.Context().Value(http.LocalAddrContextKey)
- 1 回答
- 0 關注
- 163 瀏覽
添加回答
舉報
0/150
提交
取消