您的位置:首页 > 理论基础 > 计算机网络

在python中用BaseHTTPRequestHandler模块儿时获取客户端的ip和端口

2015-06-18 23:26 1101 查看
1、在python安装路径下找到E:\Program Files\Python25\Lib\SocketServer.py

2,由于python原装模块并没有为我们提供获取客户端IP地址和port的接口(至少目前我没有找到),因此需要自己动手丰衣足食了。修改SocketServer中代码,在其中添加一个全局变量,以获取客户端的addr。在handle_request()函数当中添加如下代码

代码如下:

application_client_addr=('192.168.0.1',9999)#全局变量

def handle_request(self):

"""Handle one request, possibly blocking."""

try:

request, client_address = self.get_request()

global application_client_addr#声明全局变量

application_client_addr=client_address#获取客户端addr

except socket.error:

return

if self.verify_request(request, client_address):

try:

self.process_request(request, client_address)

except:

self.handle_error(request, client_address)

self.close_request(request)

3.如何调用呢?在你的程序当中

import SocketServer

print SocketServer.application_client_addr

取完收工!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: