如何在基于HTTP服务器的python上获取客户端的IP地址?

时间:2019-04-28 12:24:35

标签: python python-3.7 httpserver

我构建了一个基于HTTP服务器的简单python,我想在控制台上打印每个客户端的IP(在此行-print(“客户端的IP地址” + IP))。你能帮我吗?

我附上了服务器的完整代码,谢谢! 该服务器是一个基于HTTP服务器的Python,我使用了select和socket。 需要客户端IP地址的原因是创建用户IP字典。谢谢!

id  second_id   status
1   3           1
1   4           1

1 个答案:

答案 0 :(得分:0)

您从s.accept()获取客户端地址-这是IP地址(str)和端口(int)的元组。您的代码根本不使用此变量,而只在乎套接字。

new_client_socket, client_address = s.accept()

您仅将客户端请求字符串传递给get_file_info,因此它对当前服务的客户端一无所知。将客户端地址保存在某个地方,也许在将套接字映射到此类元组的字典中?

更多信息:https://docs.python.org/3/library/socket.html#socket.socket.accept