Curl:如何传递包含百分号的密码
Posted
技术标签:
【中文标题】Curl:如何传递包含百分号的密码【英文标题】:Curl : How to pass password containing a percent sign 【发布时间】:2012-09-01 11:05:25 【问题描述】:我没有使用 php,而是另一种语言。仅供参考。但是,我将 PHP 作为标签包含在内,以防万一有人有解决方案...
目前,我首先尝试获取正确的字符串(通过 curl 从远程服务器下载文件到本地域)。无论如何,密码包含一个百分号 (%)。 当我这样做时,我在命令行上收到以下错误:
curl: (67) Access denied: 530
67 是来自 curl 的错误代码(另请参阅 http://curl.haxx.se/docs/manpage.html),表示“用户名、密码或类似名称未被接受,并且 curl 无法登录。”
现在说原始字符串是这样的:
curl -u Login:Pass%Word
我尝试了以下在网上找到的解决方案:
curl -u Login:Pass%25Word
curl -u Login:Pass%%Word
curl -u Login:Pass^%Word
curl -u Login:Pass^%%Word
但是.. 我总是拒绝访问。
有人可以帮帮我吗?
【问题讨论】:
改密码能不能试试?或者,如果您尝试使用没有此类字符的密码的用户? @GolezTrol 好主意。我在不同的服务器上尝试过,所以我会有不同的用户名/密码(没有百分比)并且它可以工作,即使它需要 46 秒才能获取文件...... 【参考方案1】:你试过用 ASCII 码吗?
curl -u Login:Pass%25Word
Source
【讨论】:
(我也从那个网站得到了我尝试过的其他东西......)【参考方案2】:我刚刚重播了您的案例:让用户测试 / some%password 并保护我的网站。
这两个命令有效:
curl -u 'test:some%password'
curl -u test:some%password
您似乎只是使用了错误的密码或拼写错误的服务器名称
【讨论】:
是的,你是对的。我检查了电子邮件中的登录名,并用我一直在使用的内容进行了验证(但从未在 ftp 连接中查看过),并且电子邮件中的登录名在登录的中间有一个大写字母。在 ftp 中(然后我记得几个月前曾提到过这个问题),它中途没有那个大写字母。解决这个问题使它一切正常。谢谢!以上是关于Curl:如何传递包含百分号的密码的主要内容,如果未能解决你的问题,请参考以下文章
当 URL 包含百分比符号时如何停止错误 400? (阿帕奇)