gpt4 book ai didi

c++ - 如何避免 QNetworkRequest 将 RHELP 动词发送到 FTP 服务器?

转载 作者:太空狗 更新时间:2023-10-29 20:29:16 24 4
gpt4 key购买 nike

场景:
我正在我的应用程序中实现一个 FTP get 功能,它使用 Qt 4.7.x
Qt 文档指出 QFtp已弃用,改为使用 QNetworkAccessManager,所以我正在做 ;)
我用一些 FTP 测试了我编写的代码服务器在那里,它似乎工作正常。

问题:
当我使用我的 ftp get 类连接到我本地的、自制的(非常简单的)ftp 服务器时,我收到以下错误:请求:500 无可用帮助。我使用 tcpdump 跟踪了 ftp 通信,实际上我看到 QNetworkAccessManager/QNetworkRequest 向服务器发送一个 HELP 动词,一旦它得到 < strong>230 用户登录

不幸的是我的服务器不支持。现在有没有办法配置 Qt 不发送帮助动词?在线阅读有关类(class)的 Qt Doc 没有帮助。

最佳答案

除非您想重新实现 FTP 后端,否则可能无法避免这种情况。通过浏览source code for the FTP backend ,你可以发现发送HELP命令的目的是查看服务器是否支持“SIZE”和“MDTM”命令。

可能最简单的解决方案是在您的 FTP 服务器中为 HELP 命令实现一个最小的处理程序,以适当的 200/211/214 响应进行响应。

编辑:参见 http://qt.gitorious.org/qt/qt/blobs/4.8/src/network/access/qnetworkaccessftpbackend.cpp#line350后端对响应的期望。这并不复杂。

关于c++ - 如何避免 QNetworkRequest 将 RHELP 动词发送到 FTP 服务器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10482991/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com