Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Shell 如何从文件发送HTTPS请求?_Shell_Openssl - Fatal编程技术网

Shell 如何从文件发送HTTPS请求?

Shell 如何从文件发送HTTPS请求?,shell,openssl,Shell,Openssl,假设我有一个文件request.txt,看起来像: GET / HTTP/1.0 Some_header: value text=blah 我试过: cat request.txt | openssl -s_client -connect server.com:443 不幸的是,它没有工作,我需要手动复制和粘贴文件内容。如何在脚本中执行此操作?cat不适合下载远程文件,它最好用于运行脚本的文件系统的本地文件。要下载远程文件,您可以使用其他命令来更好地处理此问题 如果您的环境安装了wget,

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

GET / HTTP/1.0
Some_header: value

text=blah
我试过:

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

不幸的是,它没有工作,我需要手动复制和粘贴文件内容。如何在脚本中执行此操作?

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

如果您的环境安装了
wget
,则可以通过URL下载该文件。这里有一些链接。这看起来像:

wget https://server.com/request.txt
如果您的环境安装了
curl
,则可以通过URL下载该文件。这里有一些链接。这看起来像:

curl -O  https://server.com/request.txt
请注意,如果您想将响应存储在一个变量中以进行进一步修改,您还可以做更多的工作


另外值得注意的是,如果您真的必须使用
cat
下载远程文件,则有可能,但它可能需要使用
ssh
,我不喜欢使用这种方法,因为它需要通过
ssh
访问文件,而文件已经通过HTTP/s公开。我想不出这样做的实际原因,但为了完成,我想说的是,这是可以做到的,但可能不应该

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

如果您的环境安装了
wget
,则可以通过URL下载该文件。这里有一些链接。这看起来像:

wget https://server.com/request.txt
如果您的环境安装了
curl
,则可以通过URL下载该文件。这里有一些链接。这看起来像:

curl -O  https://server.com/request.txt
请注意,如果您想将响应存储在一个变量中以进行进一步修改,您还可以做更多的工作


另外值得注意的是,如果您真的必须使用
cat
下载远程文件,则有可能,但它可能需要使用
ssh
,我不喜欢使用这种方法,因为它需要通过
ssh
访问文件,而文件已经通过HTTP/s公开。我想不出这样做的实际原因,但为了完成,我想说的是,这是可以做到的,但可能不应该

看到这个了吗?看到这个了吗?哦,对不起,我说得不够清楚。我准备了一些特殊的请求,带有特殊的头和特殊的二进制数据,我想发送到服务器。整个请求都在我的计算机上的reqiest.txt中,现在我希望该请求被传输和发送。所以你认为通过openssl不太可能做到这一点,而我必须通过某种方式推动它?你介意用你刚才提供的信息更新你的问题吗?另外,任何其他信息都有助于了解您的意图。我不清楚那里有什么,但从您刚刚编写的内容来看,似乎您希望处理本地文本文件,以便将数据发送到远程服务器。是吗?我有一个请求要发送,请求在文件中。问题就是这么说的。哦,对不起,我没说清楚。我准备了一些特殊的请求,带有特殊的头和特殊的二进制数据,我想发送到服务器。整个请求都在我的计算机上的reqiest.txt中,现在我希望该请求被传输和发送。所以你认为通过openssl不太可能做到这一点,而我必须通过某种方式推动它?你介意用你刚才提供的信息更新你的问题吗?另外,任何其他信息都有助于了解您的意图。我不清楚那里有什么,但从您刚刚编写的内容来看,似乎您希望处理本地文本文件,以便将数据发送到远程服务器。是吗?我有一个请求要发送,请求在文件中。问题恰恰说明了这一点。