Python twisted reactor - 地址已被使用

标签 python macos sockets twisted

我正在学习教程 http://www.raywenderlich.com/3932/how-to-create-a-socket-based-iphone-app-and-server用于在 Mac OS X 环境中使用套接字编程创建示例。

我正在使用 post 80 编写 reactor.listenTCP(80, factory)。 当我运行 server.py 文件时,出现错误:

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.

源码如下:

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()

如果我使用的不是 6 之类的另一个端口,它工作正常。 我只是想知道,如何将端口 80 用于同一个应用程序。

最佳答案

打开事件监视器,搜索 Python 并终止进程。您可能搞砸了一次关闭服务器。

关于Python twisted reactor - 地址已被使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14640711/

相关文章:

python - 依赖于先前匹配的正则表达式

python - pandas 系列是否有类似 'get' 的映射方法?

javascript - 禁用 Firefox 网络通知的默认警报声音

适用于 Windows 和 Mac 的 Java 安装程序

java - 关于 String 和 WirteUTF InputStream

python - Pandas - 如果少于 N,则删除唯一行

python - 如何使用 BeautifulSoup 获取 <hr class = 'calibre2' > ... <hr class ="calibre2"/> 之间的内容

python - 无法在 mac 中初始化 pipenv(发现 TypeError : sequence item 0: expected str instance, NoneType)

C:使用Select监听两个socket

c - Unix 域套接字错误,sendmsg : No buffer space available