我正在嘗試在與服務器建立連接時獲取客戶端 IP。嘗試使用RemoteAddr()返回一個 addr 類型,雖然我可以使用 打印到控制臺fmt.Println,但我正在嘗試將該值分配給一個字符串變量。這可能嗎?或者有沒有更好的方法來提取連接的客戶端的 IP 地址?我正在處理的函數示例(strRemoteAddr作業是問題部分,但我將其作為占位符保留...):func GrabInput(conn net.Conn, strFromListenerNumber string) { var strMessage string var strRemoteAddr string bufIncoming := make([]byte, 1024) strRemoteAddr = conn.RemoteAddr() for { bytesRead, err := conn.Read(bufIncoming) if err != nil { LogEvent(strFromListenerNumber, err.Error()) return } strMessage = string(bufIncoming[0 : bytesRead-1]) LogEvent(strFromListenerNumber+": "+strRemoteAddr, strMessage) }}
2 回答

慕俠2389804
TA貢獻1719條經驗 獲得超6個贊
似乎只是
strRemoteAddr = conn.RemoteAddr().String()
可以做到,net.Addr 類型具有用于字符串表示的方法 String()。
- 2 回答
- 0 關注
- 719 瀏覽
添加回答
舉報
0/150
提交
取消