libcurl库使用ftp协议下载文件,返回CURLE_REMOTE_ACCESS_DENIED

京东自营,扫码进入

今天使用libcurl库,下载一个ftp文件,curl_easy_perform()函数返回值CURLE_REMOTE_ACCESS_DENIED,查了很多资料,千篇一律的翻译了官网的英文。

杜比音效 Xbox One Win 10 耳机杜比音效Dolby Access Atmos 25位数字兑换码 dts 杜比全景声(耳机)
杜比音效 Xbox One Win 10 耳机杜比音效Dolby Access Atmos 25位数字兑换码 dts 杜比全景声(耳机)
天猫商城 微软正版 官方兑换码 正品保证 | 月销量1000件
优惠价12元
原价¥15

淘口令:

¥Mo1u2PPwaxa¥
 

被拒绝访问的资源的URL。对于FTP,发生这种情况一般是因为试图改变远程目录。

我想了半天,只是下载文件,不涉及到改变远程目录啊,难道是需要手动一步一步切换目录到文件所在位置?应该不会,很多demo里都是直接把文件url传递给libcurl,然后就perform的,都没问题。

后来我找到了原因,因为远程FTP服务器把/subdir1/作为了根目录和访问的默认目录。

我之前自己用socket编程来和FTP服务器通讯,未考虑根目录和默认目录的处理,所以url中包含subdir1;

使用浏览器和libcurl访问时,url中不包含subdir1这一级;但我传递给libcurl的url中包含了subdir1,所以提示CURLE_REMOTE_ACCESS_DENIED。

© 版权声明
THE END
喜欢就支持一下吧,技术咨询可以联系QQ407933975
点赞0 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片