问题标签 [twisted]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
8889 浏览

python - Python Twisted 中的异步编程

我在 Twisted 中开发反向代理时遇到了麻烦。它有效,但似乎过于复杂和令人费解。很多感觉就像巫毒教一样。

网络上或书中是否有任何简单、可靠的异步程序结构示例?一种最佳实践指南?当我完成我的程序时,我希望仍然能够以某种方式看到结构,而不是看着一碗意大利面。

0 投票
1 回答
1118 浏览

c# - 从 C# 将具有未知编码的扩展 ascii 字符传输到 Twisted XMLRPC

基本上,我想传递一个包含西班牙语文本的字符串,该文本可能是几种编码之一(Latin-1、CP-1252 或 UTF-8 等等)。一旦它到达 XMLRPC,我就可以检测到编码,但在那之前我不会知道它。C#,默认情况下似乎会杀死 ASCII 之外的任何字符。我已经通过对字符串进行 base64 编码解决了这个问题,但我真的很想不这样做。

我正在使用 CookComputing.XmlRpc... 这是我的界面的代码片段:

任何帮助,将不胜感激。谢谢!

0 投票
2 回答
8613 浏览

python - 如何用py2exe打包Twisted程序?

我试图用 py2exe 打包一个 Twisted 程序,但是一旦我运行我构建的 exe 文件,我得到一个“没有名为资源的模块”错误。

我发现 py2exe 说:

以下模块似乎缺少 ['FCNTL', 'OpenSSL', 'email.Generator', 'email.Iterators', 'email.Utils', 'pkg_resources', 'pywintypes', 'resource', 'win32api', 'win32con'、'win32event'、'win32file'、'win32pipe'、'win32process'、'win32security']

那么我该如何解决这个问题呢?

谢谢。

0 投票
2 回答
2258 浏览

python - Python - 如何使用 Conch 创建虚拟 SSH 服务器

我正在考虑在 python 中创建一个可以运行的服务器,并将用作 SSH 服务器。然后,这将让不同的用户登录,并像他们正常登录一样行事,但只能访问一个命令。

我想这样做,以便我可以拥有一个可以添加用户的系统,而无需创建系统范围的帐户,这样他们就可以提交到 VCS 分支或类似的分支。

虽然我可以弄清楚如何使用 conch 将其放入“自定义”外壳中......但我无法弄清楚如何制作它,以便 SSH 流就像它是真实的一样工作(我最好希望限制为 /bin/bzr 以便 bzr+ssh 可以工作。

它需要在 python 中(我可以进行授权),但不知道如何链接到应用程序。

这需要在 python 中才能在其设计的应用程序中工作,并且能够用于那些无权添加新用户的人

0 投票
4 回答
7016 浏览

python - 是否可以在 Twisted 中的套接字上设置超时?

我意识到我可能只是愚蠢并且错过了一些重要而重要的事情,但我无法弄清楚如何使用reactor.listenUDP指定扭曲的超时。我的目标是能够指定超时,并且在所述时间之后,如果 DatagramProtocol.datagramReceived 没有被执行,让它执行一个回调或者我可以用来调用 reactor.stop() 的东西。任何帮助或建议表示赞赏。谢谢

0 投票
4 回答
8404 浏览

python - 如何使用 Twisted Words Python 库创建一个简单的 Google Talk 客户端?

我有兴趣使用 Python 制作 Google Talk 客户端,并希望使用 Twisted 库 Words 模块。我查看了这些示例,但它们不适用于 Google Talk 的当前实现。

有人对此有任何运气吗?您介意记录一个简短的教程吗?

作为一项简单的任务,我想创建一个客户端/机器人来跟踪我的各种 Google Talk 帐户的在线时间,以便我可以获得一个汇总数字。我想我可以将每个帐户中的机器人加为好友,然后使用 XMPP 存在信息来跟踪我可以聚合的时间。

谢谢。

0 投票
4 回答
2420 浏览

python - 如何进行同步 rpc 调用

我正在构建一个程序,它有一个在本地使用的类,但我希望在网络上以相同的方式使用同一个类。这意味着我需要能够对其任何公共方法进行同步调用。该类读写文件,所以我认为 XML-RPC 开销太大。我使用来自 twisted 的示例创建了一个基本的 rpc 客户端/服务器,但是我遇到了客户端问题。

这适用于单个调用,当接收到数据时,我调用 reactor.stop(),但如果我再进行调用,反应堆将不会重新启动。我应该为此使用其他东西吗?也许是不同的扭曲模块或另一个框架?

(我不包括协议如何工作的细节,因为主要的一点是我只得到一个调用。)

附录和说明:

我分享了一个谷歌文档,里面有关于我在做什么的注释。http://docs.google.com/Doc?id=ddv9rsfd_37ftshgpgz

我有一个使用保险丝编写的版本,可以将多个本地文件夹组合到保险丝安装点。文件访问已经在一个类中处理,所以我希望有服务器可以让我对同一个类进行网络访问。继续搜索后,我怀疑 pyro ( http://pyro.sourceforge.net/ ) 可能是我真正想要的(仅基于现在阅读他们的主页),但我愿意接受任何建议。

我可以通过使用 nfs 挂载并将其与我的本地文件夹组合来获得类似的结果,但我希望所有对等方都可以访问相同的组合文件系统,因此这将要求每台计算机都成为具有多个 nfs 的 nfs 服务器挂载数量等于网络中的计算机数量。

结论: 我决定使用 rpyc,因为它给了我我想要的东西。一个服务器,它保留一个类的实例,我可以像在本地一样操作它。如果有人感兴趣,我会将我的项目放在 Launchpad ( http://launchpad.net/dstorage ) 上。

0 投票
2 回答
827 浏览

python - 扭曲的 FTPFileListProtocol 和带空格的文件名

我正在使用 Python 和Twisted框架连接到 FTP 站点以执行各种自动化任务。如果相关的话,我们的 FTP 服务器恰好是 Pure-FTPd。

在FTPClient上连接和调用list方法时,生成的FTPFileListProtocol文件集合不包含任何包含空格 (' ') 的目录或文件名。

有没有其他人看过这个?是创建 FTPFileListProtocol 的子类并覆盖其unknownLine方法,手动解析文件/目录名称的唯一解决方案吗?

0 投票
2 回答
7995 浏览

python - 在扭曲协议中定期运行函数

我正在寻找一种方法来定期通过连接到 TCP 端口的所有客户端发送一些数据。我在看twisted python,我知道reactor.callLater。但是如何使用它定期向所有连接的客户端发送一些数据?数据发送逻辑在协议类中,由reactor根据需要进行实例化。我不知道如何将它从反应堆绑定到所有协议实例......

0 投票
1 回答
217 浏览

python - XmlStream.addObserver 中的 XPath 无法正常工作

我想做的是只对指定的根元素做出反应。例如,如果用户发送如下所示的 XmlStream:

我的方法 ._auth 应该被执行。我已经使用在 connectionMade 方法中调用的 addObserver 方法完成了它。

AFAIK XPath - 如果我写“/auth”,这意味着我希望我的根元素是“auth”,所以该消息:

...应该被拒绝,因为 auth 不是 root。

但是,Twisted 并没有按照我认为的方式工作——我的 _auth 方法在第二条消息出现时执行(树中有 auth 元素),而不是第一条消息——以 auth 元素为根。

所以,我的问题是:如何告诉 Twisted 和 addObserver 方法我只想在根元素的名称是“auth”时做出反应?