[英]socket server - getting a connected user's ip
我剛剛開始制作一個簡單的套接字“聊天”服務器,用戶可以通過telnet
連接到我的服務器。 我想知道如何獲取連接的用戶的IP地址,以便它可以像這樣打印出用戶消息:
IP address: "Hello"
這是我到目前為止使用的代碼:
def broadcast(self, message):
for sessions in self.sessions:
sessions.push('>>' + message + '\r\n')
在此先感謝,如果您需要更多信息,請詢問。
編輯:
整個程序的鏈接: http : //pastebin.com/9vzuiLZe
<your-socket-instance>.getpeername()
將為您提供所需內容
您應該添加到代碼中:
class ChatSession(async_chat):
def __init__(self,server,sock):
async_chat.__init__(self, sock)
self.server = server
self.set_terminator("\r\n")
self.data = []
self.sock = sock # <--- add this, so you remember the socket object
然后使用@staticd建議的內容:
def broadcast(self, line):
for sessions in self.sessions:
sessions.push(sessions.sock.getpeername() + ': ' + line + '\r\n')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.