Ich befolge ein Tutorial http://www.raywenderlich.com/3932/how-to-create-a-socket-based-iphone-app-and-server zum Erstellen eines Beispiels mit Socket-Programmierung in Mac OS X Umgebung.Python twisted reactor - Adresse wird bereits verwendet
Ich schreibe mit post 80 für reactor.listenTCP (80, Fabrik). Wenn ich die server.py Datei ausführen, einen Fehler bekommen:
File "server.py", line 10, in <module>
reactor.listenTCP(6, factory)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twisted/internet/posixbase.py", line 436, in listenTCP
p.startListening()
File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twisted/internet/tcp.py", line 641, in startListening
raise CannotListenError, (self.interface, self.port, le)
twisted.internet.error.CannotListenError: Couldn't listen on any:80: [Errno 48] Address already in use.
Quellcode ist wie folgt:
from twisted.internet.protocol import Factory, Protocol
from twisted.internet import reactor
class IphoneChat(Protocol):
def connectionMade(self):
self.factory.clients.append(self)
print "clients are ", self.factory.clients
def connectionLost(self, reason):
self.factory.clients.remove(self)
factory = Factory()
factory.protocol = IphoneChat
factory.clients = []
reactor.listenTCP(80, factory)
print "Iphone Chat server started"
reactor.run()
Wenn ich einen anderen Port nicht wie 6 usw. verwenden bin, funktioniert es gut . Ich wollte nur wissen, wie ich Port 80 für die gleiche Anwendung verwenden kann.
Port 80 ist für das HTTP-Protokoll reserviert. Überprüfen Sie, ob auf diesem Port kein Prozess ausgeführt wird. Vielleicht ein HTTP-Server, wie Apache? –