在 Twistd 而不是 Python 中运行



我需要调试我的扭曲应用程序。 我正在使用pycharm,据我所知,我可以使用--no-daemon选项以twistd启动我的应用程序,以便逐步完成代码。

我有以下代码来启动服务器。

def main():
    log.startLogging(sys.stdout)
    contextFactory = ssl.DefaultOpenSSLContextFactory(os.environ['SSLKEY'],
                                                     os.environ['SSLCERT'])
    factory = WebSocketServerFactory(u"wss://0.0.0.0:8080")
    factory.protocol = MyServerProtocol
    resource = WebSocketResource(factory)
    root = create_root()
    saml_manager = SamlManager()
    saml_manager.init_app(root)
    root.putChild(b"ws", resource)
    site = Site(root)
    reactor.listenSSL(8080, site, contextFactory)
    reactor.run()

if __name__ == '__main__':
    main()

我看到 twistd 有一个 -y 选项,但我无法让它运行我的应用程序。

我的目录树如下。

.
├── app
│   ├── __init__.py
│   ├── auth.py
│   ├── certs
│   └── index.html
├── run.py
├── saml
│   └── settings.json
└── venv
    ├── bin
    ├── include
    ├── lib
    └── pip-selfcheck.json
7 directories, 6 files

我一直在通过执行调用main((函数的 run.py 来运行该应用程序。

如何在命令行上使用 twistd 启动此应用程序,以便调试应用程序?

作为参考,我指的是如何在 PyCharm 中调试扭曲的应用程序,以便尝试在 pycharm 中调试扭曲的应用程序。

如果有更好的方法可以做到这一点,以便我可以在请求中设置断点,请告诉我。

谢谢!

忽略这个问题。 我显然有一个糟糕的装饰器,它导致了重定向循环,并且还阻止了我调试。 一旦我删除了该装饰器,我就可以像往常一样进行调试。

相关内容

  • 没有找到相关文章