2

我正在尝试创建一个扭曲的服务器,该服务器将接受一个 http post 请求,然后将该 post 请求的信息写入 tcp 连接。现在我刚刚修改了教程中给出的多重回显服务器/客户端:

from twisted.internet.protocol import Protocol, Factory
from twisted.internet import reactor


class MultiClientEcho(Protocol):
    def __init__(self, factory):
        self.factory = factory

    def connectionMade(self):
        self.factory.clients.insert(self.factory.id, self)
        self.factory.id += 1
        self.ip = self.transport.getPeer()

    def dataReceived(self, data):
        self.factory.clients[0].transport.write(data)

    def connectionLost(self, reason):
        self.factory.clients.remove(self)


class MultiClientEchoFactory(Factory):
    def __init__(self):
        self.clients = []
        self.id = 0

    def buildProtocol(self, addr):
        return MultiClientEcho(self)


reactor.listenTCP(8000, MultiClientEchoFactory())
reactor.run()

我被引导了解 Twisted 可以处理这些事情。如果是这样,有人可以用一些代码或一个简单的例子指出我正确的方向吗?有一段时间我一直在用头撞墙。

谢谢

4

0 回答 0