如何从文件发送HTTPS请求?

时间:2015-12-16 17:17:26

标签: shell openssl

假设我有一个文件request.txt,它看起来像:

GET / HTTP/1.0
Some_header: value

text=blah

我试过了:

cat request.txt | openssl -s_client -connect server.com:443

不幸的是它没有用,我需要手动复制&粘贴文件内容。我怎么能在脚本中做到这一点?

1 个答案:

答案 0 :(得分:1)

cat不适合下载远程文件,它最适合运行脚本的文件系统本地文件。要下载远程文件,您可以使用其他命令来更好地处理此问题。

如果您的环境已安装wget,则可以按URL下载该文件。以下是某些examples on how it's used的链接。那看起来像是:

wget https://server.com/request.txt

如果您的环境已安装curl,则可以按URL下载该文件。以下是某些examples on how it's used的链接。那看起来像是:

curl -O  https://server.com/request.txt

请注意,如果您想将响应存储在变量中以进行进一步修改,您可以执行此操作以及更多工作。

另外值得注意的是,如果你真的必须使用cat下载远程文件,那么它可能需要使用ssh并且我不喜欢使用该方法,因为它需要通过ssh访问文件,因为它已经通过HTTP / S公开提供。我没有想到以这种方式去做的实际原因,但为了完成,我想提一下可能可以完成,但可能不应该这样做。