查看完整版本: [-- Qt5 FTp 上传下载出现 ContentAccessDenied 报错 --]

QTCN开发网 -> Qt基础编程 -> Qt5 FTp 上传下载出现 ContentAccessDenied 报错 [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

luanl 2019-10-19 18:19

Qt5 FTp 上传下载出现 ContentAccessDenied 报错

最近在弄Qt5 FTP的一些事情,自己用FileZilla Server Interface 搭建了一个ftp Sverver 然后用Qt5 QNetworkAccessManager 的方式去实现,的确可以上传和下载。但是问题来了,我调试的一个机器控制器内部带FTp,需要进行文件下载上传。但是就出现 :ContentAccessDenied这样的报错;中文的理解就是目录内容拒绝访问。
FTP 没有用户设置和密码设置,用FileZilla正常连接上传下载,不知道原因在哪里?还请指点
   //从服务器上下载文件到选中文件夹      
QNetworkAccessManager *accessManager = new QNetworkAccessManager(this);      
accessManager->setNetworkAccessible(QNetworkAccessManager::Accessible);//      
QUrl url("ftp://192.168.10.93/PROJECTS/LUAN.TXT");//PROJECTS/QK    
   url.setUserName("");      
url.setPassword("");      
  url.setPort(21);      
  QNetworkRequest request(url);      
  reply = accessManager->get(request);      
connect((QObject *)reply, SIGNAL(readyRead()), this, SLOT(readContent()));      
  connect(accessManager, SIGNAL(finished(QNetworkReply*)), this, SLOT(replyFinished(QNetworkReply*)));      
  connect(reply, SIGNAL(downloadProgress(qint64 ,qint64)), this, SLOT(loadProgress(qint64 ,qint64)));      
connect(reply, SIGNAL(error(QNetworkReply::NetworkError)),SLOT(replyError(QNetworkReply::NetworkError)));







20091001753 2019-10-19 23:23
你把目标文件的名字和目录,都设置成纯英文。如果成功的话,那应该就是编码问题了。

luanl 2019-10-20 10:18
20091001753:你把目标文件的名字和目录,都设置成纯英文。如果成功的话,那应该就是编码问题了。 (2019-10-19 23:23) 

都是英文路径,没有任何中文; url.setUserName("");      
url.setPassword("");      这两项设置的空字符串;不知道Qt5 的机制是不是跟这个有关系。其他都试过了,就是出现 ContextAccessDenied;

liulin188 2019-10-20 12:46
用dos命令先试试

iceroad 2019-10-22 14:49
不建议用QNetworkAccessManager来实现ftp功能,自己的亲身经历,做过个一个ftp上传图片的功能,用第三方工具就没问题,用QNetworkAccessManager经常上传失败,后来用的开源库libcurl来实现ftp,功能稳定,即使使用出现了问题,这个库可以直接给出ftp错误码

stlcours 2019-10-22 17:48
不建议用FileZilla Server,随时随地掉线

luanl 2019-10-23 16:13
iceroad:不建议用QNetworkAccessManager来实现ftp功能,自己的亲身经历,做过个一个ftp上传图片的功能,用第三方工具就没问题,用QNetworkAccessManager经常上传失败,后来用的开源库libcurl来实现ftp,功能稳定,即使使用出现了问题,这个库可以直接给出ftp错误码 (2019-10-22 14:49) 

QNetWorkAccessManage是比较坑爹,我后来注意到主动传输模式和被动传输模式,那个控制器必须要设置主动才能访问,折腾死人了,现在用Qt4里面的QFTP先用着。

luanl 2019-10-23 16:14
stlcours:不建议用FileZilla Server,随时随地掉线[表情]  (2019-10-22 17:48) 

是一个控制器,File Server 用来模拟测试的;已经用Qt4里面的QFTP;

luanl 2019-10-23 16:15
liulin188:用dos命令先试试 (2019-10-20 12:46) 

Dos是OK的,已经解决,使用Qt4 里里面的QFTP;

半天凉月色 2022-11-22 10:38
luanl:Dos是OK的,已经解决,使用Qt4 里里面的QFTP; (2019-10-23 16:15) 

大哥,能分享一下你的ftp代码吗

fsu0413 2022-11-23 08:37
Username设置成Anonymous,密码设置一个邮箱试试

fsu0413 2022-11-23 08:37
我居然没注意到这是个19年的帖子。。。。


查看完整版本: [-- Qt5 FTp 上传下载出现 ContentAccessDenied 报错 --] [-- top --]



Powered by phpwind v8.7 Code ©2003-2011 phpwind
Gzip disabled