赞
踩
我的Coldfusion代码中有以下代码可以正常工作:
这将使用cURL从指定的路径下载Excel文件并将其转储到浏览器,效果很好。
但是,我无法使用Wget进行相同的操作。
首先,我尝试了:
这将返回一个空字符串。 似乎我们需要为Wget使用等效于cURL的" -k",以告诉它忽略SSL证书错误。 所以我尝试了:
这给了我以下结果:
Usage: wget [OPTION]... [URL]... Try `wget --help' for more options.
如何在cfexecute中使用Wget下载Excel文件,而忽略SSL证书错误?
编辑:
直接从命令行运行wget --no-check-certificate"https://myPath/myFile.xlsx"即可。
如果从命令行运行,那似乎排除了我的想法,即wget没有使用SSL支持进行编译。 我注意到您在命令行示例中如何在URL周围加引号。 没有这些功能是否可以工作? 我希望可以,但是它们是我可以看到的与cfexecute之间的唯一区别。
另一种可能性-您确定命令行和CF使用的是同一版本的wget吗? 也许将完整的可执行文件路径放在CF中作为双重检查?
路径呢? CF真的知道从哪里获取wget吗? 请尝试使用指向您的wget实例的显式完整路径在CF中启动wget。
从wget手册页(http://linux.die.net/man/1/wget)
" HTTPS(SSL / TLS)选项
为了支持加密的HTTP(HTTPS)下载,必须使用外部SSL库(当前为OpenSSL)编译Wget。 如果Wget在没有SSL支持的情况下编译,则这些选项均不可用。"
您可能需要检查您使用的wget版本是否支持SSL。
cfhttp可以做什么吗?
https://wikidocs.adobe.com/wiki/display/coldfusionen/cfhttp
如果您使用的是自签名证书,则可以将其添加到JVM的密钥存储区,以避免证书错误。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。