我想编写一个可以接受python(twisted)中的多个客户端的服务器.我已经非常熟悉使用标准python套接字模块的套接字编程,但是这里遇到了麻烦.我认为扭曲很难进入,我已经阅读了一些有关它的教程.但我真的找不到的是一个接受多个连接的简单套接字服务器..任何人都可以帮忙吗?如果我在网上错过了一些有价值的信息,请告诉我,因为我正在拉我的头发..
任何帮助深表感谢,
Andesay
Tom*_*mmy 12
比如,您想运行服务器接受端口9000上的客户端连接:
from twisted.internet import reactor, protocol
PORT = 9000
class MyServer(protocol.Protocol):
pass
class MyServerFactory(protocol.Factory):
protocol = MyServer
factory = MyServerFactory()
reactor.listenTCP(PORT, factory)
reactor.run()
Run Code Online (Sandbox Code Playgroud)
如果你想测试连接到这个服务器,这里是客户端的代码(在不同的终端中启动):
from twisted.internet import reactor, protocol
HOST = 'localhost'
PORT = 9000
class MyClient(protocol.Protocol):
def connectionMade(self):
print "connected!"
class MyClientFactory(protocol.ClientFactory):
protocol = MyClient
factory = MyClientFactory()
reactor.connectTCP(HOST, PORT, factory)
reactor.run()
Run Code Online (Sandbox Code Playgroud)
您会注意到代码非常相似,只有我们为服务器使用Factory而客户端使用ClientFactory,服务器需要在客户端需要连接时监听(listenTCP)(connectTCP).祝好运!
我想,你没有得到扭曲的本质.如果您创建一个扭曲的套接字服务器,它默认可通过多个客户端连接.我会按顺序建议以下教程,然后阅读扭曲的文档.编写这些教程中给出的小片段,以了解实际发生的情况.