import SocketServer
class MyHandler(SocketServer.BaseRequestHandler):
def handle(self):
self.data = self.request.recv(1024).strip()
print '{} wrote:'.format(self.client_address[0])
print self.data
self.request.sendall(self.data.upper())
if __name__ == '__main__':
HOST, PORT = 'localhost', 9999
server = SocketServer.TCPServer((HOST, PORT), MyHandler)
server.serve_forever() import SocketServer
class MyHandler(SocketServer.BaseRequestHandler):
def handle(self):
data = self.request[0].strip()
socket = self.request[1]
print '{} wrote:'.format(self.client_address[0])
print data
socket.sendto(data.upper(), self.client_address)
if __name__ == '__main__':
HOST, PORT = 'localhost', 9999
server = SocketServer.UDPServer((HOST, PORT), MyHandler)
server.serve_forever() import socket
import threading
import SocketServer
class MyHandler(SocketServer.BaseRequestHandler):
def handle(self):
data = self.request.recv(1024)
curr_thread = threading.current_thread()
response = '{}: {}'.format(curr_thread.name, data)
self.request.sendall(response)
class Server(SocketServer.ThreadingMixIn, SocketServer.TCPServer):
pass
def client(ip, port, message):
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.connect((ip, port))
try:
sock.sendall(message)
response = sock.recv(1024)
print 'Received: {}'.format(response)
finally:
sock.close()
if __name__ == '__main__':
HOST, PORT = 'localhost', 0
server = Server((HOST, PORT), MyHandler)
ip, port = server.server_address
serer_thread = threading.Thread(target=server.serve_forever)
server_thread.daemon = True
server_thread.start()
print 'Server loop running in thread:', server_thread.name
client(ip, port, 'Hello World 1')
client(ip, port, 'Hello World 2')
client(ip, port, 'Hello World 3')
server.shutdown()
server.server_close() #创建SocketServerTCP服务器:
import SocketServer
from SocketServer import StreamRequestHandler as SRH
from time import ctime
host = 'xxx.xxx.xxx.xxx'
port = 9999
addr = (host,port)
class Servers(SRH):
def handle(self):
print 'got connection from ',self.client_address
self.wfile.write('connection %s:%s at %s succeed!' % (host,port,ctime()))
while True:
data = self.request.recv(1024)
if not data:
break
print data
print "RECV from ", self.client_address[0]
self.request.send(data)
print 'server is running....'
server = SocketServer.ThreadingTCPServer(addr,Servers)
server.serve_forever() from socket import *
host = 'xxx.xxx.xxx.xxx'
port = 9999
bufsize = 1024
addr = (host,port)
client = socket(AF_INET,SOCK_STREAM)
client.connect(addr)
while True:
data = raw_input()
if not data or data=='exit':
break
client.send('%s\r\n' % data)
data = client.recv(bufsize)
if not data:
break
print data.strip()
client.close() 更讲解Python中SocketServer模块处理网络请求相关文章请关注PHP中文网!
查看更多关于讲解Python中SocketServer模块处理网络请求的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did85891