Closed GoldJohnKing closed 4 years ago
可能不会考虑支持,原因如下:
我未能找到直接的基于你所述的Deluge Daemon 使用Javascript实现的其他例子或者官方调用说明,如果你能找到的话,还请告知我查看。
个人能力所限,对此不太了解。不知 Deluge 客户端的 Python 版本可否用于参考。 https://github.com/deluge-torrent/deluge
你所述的“Deluge 的 Windows 客户端的远程连接功能”(即Thin Client,下同),我尝试使用后发现该功能使用RPC形式与Deluge Daemon进行联系,而非目前Deluge Web的HTTP request形式。且插件目前未有对Javscript RPC的支持。
Thin Client 确实使用 RPC 方式与 Daemon 连接,不如说目前以 rpc 方式连接 daemon 算是更主流的做法。不过一款叫做 Transmission Remote GUI 的客户端也是以 RPC 连接 Transmission 服务器的,不知可否参考。 https://github.com/transmission-remote-gui/transgui
可能之前一些说法让你有些误解。本人在回复之前看过Deluge的repo,并看过Thin Client关于remote支持的情况并使用抓包软件进行测试过。 Deluge的Thin Client使用 RPC 方式与 Daemon 连接,但是是以TCP Socket的形式连接的,TCP Socket(不是WebSocket)目前不受浏览器直接支持(下注)。而Transmission虽然也是RPC,但是他的RPC接口支持HTTP (per XMLHttpRequest) 请求。
refs:
如果是socket来连接,插件无法获取权限,只有Chrome App 才有权限。所以这种方式插件目前无法实现。
我明白了。 既然无法实现,那就 Close issue 了。
你好,我发现 Deluge 有相关的 JSON API 扩展插件 deluge-webapi,使用HTTP协议进行通讯,不值可否供参考。 项目地址:https://github.com/idlesign/deluge-webapi 项目文档地址:https://deluge-webapi.readthedocs.io/en/latest/index.html
@GoldJohnKing 您好,通过对您贴出的链接以及该项目的测试例 阅读,我认为: 该项目提供的webapi并虽然能绕过deluged-web,但其并不需要我们修改现有deluge下载推送方式或者添加新的下载服务器类型。 因为该组件也是直接使用单密码进行验证,且使用接口和现有下载服务器相同。 您可以直接修改目前下载服务器配置端口从deluge-web到deluge-deamon进行测试。 期待您的测试结果。
@GoldJohnKing 您好,通过对您贴出的链接以及该项目的测试例 阅读,我认为: 该项目提供的webapi并虽然能绕过deluged-web,但其并不需要我们修改现有deluge下载推送方式或者添加新的下载服务器类型。 因为该组件也是直接使用单密码进行验证,且使用接口和现有下载服务器相同。 您可以直接修改目前下载服务器配置端口从deluge-web到deluge-deamon进行测试。 期待您的测试结果。
启用webapi插件并设定可访问域名后,直接将PT-Plugin-Plus的Deluge服务器端口配置到daemon的端口上,无法正常连接,提示“服务器不可用或网络错误”。
@GoldJohnKing 我怎么看那文档的接口好像和助手现在用的接口是一样的呢。 提示错误,可否看一下实际网络的请求结果?
插件日志:
{"data":{"code":0,"msg":"服务器不可用或网络错误","status":"error"},"success":false,"type":"error"}
或
{"data":{"code":0,"msg":"服务器不可用或网络错误","status":"timeout"},"success":false,"type":"error"}
插件日志:
{"data":{"code":0,"msg":"服务器不可用或网络错误","status":"error"},"success":false,"type":"error"}
或{"data":{"code":0,"msg":"服务器不可用或网络错误","status":"timeout"},"success":false,"type":"error"}
感谢反馈,看起来是连接超时,如果可以请根据以下方法跟踪网络请求:
https://github.com/ronggang/PT-Plugin-Plus/wiki/how-to-open-background-page
看看实际的 Headers
和 Response
是什么。
根据本人的测试(Deluge 1.3.9 启用WEBUI和WEBAPI,daemon端口在58846)
# curl -X POST http://127.0.0.1:58846/json -H "Content-Type: application/json" -d '{"id":0,"method":"auth.login","params":["xxxxxxxxxx"]}'
curl: (52) Empty reply from server
以及 项目测试例,特别是已有PHP的实现 https://github.com/idlesign/deluge-webapi/blob/master/webapi/test.py https://github.com/kaysond/deluge-php
lz在前面提出的 JSON API 扩展插件 deluge-webapi 仍然是基于当前deluge-web方法的扩展,并不具有 Deluge Daemon 的直接支持
的功能
您的功能请求是否与问题有关? 请描述一下。 PT-Plugin-Plus 的下载服务器适配中似乎缺乏对 Deluge Daemon 的支持。 简言之,Deluge Daemon 要求用户名和密码,而 PT-Plugin-Plus 当前只要求密码而无用户名。 请详见末尾截图中,目前 PT-Plugin-Plus 的 Deluge 适配与实际上 Deluge Daemon 服务器登录要求的区别。
描述你想要的解决方案 希望能够直接增加对 Deluge Daemon 下载服务器的支持。
描述您考虑过的替代方案 填写 Deluge Web 的参数则可以连接,但毕竟服务器上还得多装一个 deluge-web 软件包,多走一层代理毕竟也多容易出一层问题。实际上,Deluge 的客户端软件已经支持直接连接到远程 Deluge Daemon 服务器。末尾截图就是 Deluge 的 Windows 客户端的远程连接功能。
其他附加信息